PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Django-Test-App-Fehler – Beim Erstellen der Testdatenbank ist ein Fehler aufgetreten:Berechtigung zum Erstellen der Datenbank verweigert

Wenn Django die Testsuite ausführt, erstellt es eine neue Datenbank, in Ihrem Fall test_finance . Der Postgres-Benutzer mit dem Benutzernamen django hat keine Berechtigung zum Erstellen einer Datenbank, daher die Fehlermeldung.

Wenn Sie migrate ausführen oder syncdb , versucht Django nicht, den finance zu erstellen Datenbank, damit Sie keine Fehler erhalten.

Sie können dem Django-Benutzer die Berechtigung „createdb“ hinzufügen, indem Sie den folgenden Befehl in der Postgres-Shell als Superuser ausführen (Huttipp zu dieser Stapelüberlauf-Antwort).

=> ALTER USER django CREATEDB;

Hinweis: Der in ALTER USER <username> CREATEDB; verwendete Benutzername Der Befehl muss mit dem Datenbankbenutzer in Ihren Django-Einstellungsdateien übereinstimmen. In diesem Fall hatte das ursprüngliche Poster den Benutzer als django die obige Antwort.