Når Django kører testpakken, opretter den en ny database, i dit tilfælde test_finance
. Postgres-brugeren med brugernavnet django
har ikke tilladelse til at oprette en database, derfor fejlmeddelelsen.
Når du kører migrate
eller syncdb
, Django forsøger ikke at oprette finance
database, så du ikke får nogen fejl.
Du kan tilføje tilladelsen createb til django-brugeren ved at køre følgende kommando i postgres-skallen som en superbruger (hattespids til dette stack overflow-svar).
=> ALTER USER django CREATEDB;
Bemærk: Brugernavnet brugt i ALTER USER <username> CREATEDB;
kommandoen skal matche databasebrugeren i dine Django-indstillingsfiler. I dette tilfælde havde den originale plakat brugeren som django
ovenstående svar.