Saat Django menjalankan rangkaian pengujian, ia membuat database baru, dalam kasus Anda test_finance
. Pengguna postgres dengan nama pengguna django
tidak memiliki izin untuk membuat database, maka muncul pesan kesalahan.
Saat Anda menjalankan migrate
atau syncdb
, Django tidak mencoba untuk membuat finance
database, sehingga Anda tidak mendapatkan kesalahan.
Anda dapat menambahkan izin createb ke pengguna django dengan menjalankan perintah berikut di shell postgres sebagai pengguna super (tips untuk jawaban stack overflow ini).
=> ALTER USER django CREATEDB;
Catatan: Nama pengguna yang digunakan di ALTER USER <username> CREATEDB;
perintah harus cocok dengan pengguna database dalam file pengaturan Django Anda. Dalam hal ini, poster aslinya, memiliki pengguna sebagai django
jawaban di atas.