При запуске тестов в django и PostgreSQL DB не удается создать базу данных
У меня проблема с запуском юнит-тестов в django при использовании ElephantSQL,
при выполнении команды python manage.py runserver
все работает просто отлично, я могу подключиться к серверу без каких-либо проблем
но при выполнении команды python manage.py test
я получаю эту ошибку:
C:\Users\Sman9\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\siteid running initialization queries against the production database when it's not needed (for example, when running tests). Djang
warnings.warn(
Got an error creating the test database: permission denied to create database
Creating test database for alias 'default'...
C:\Users\Sman9\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\django\db\backends\postgresql\base.py:323: RuntimeWarning: Normally Django will use a connection to the 'postgres' database to avoid running initialization queries against the production database when it's not needed (for example, when running
tests). Django was unable to create a connection to the 'postgres' database and will use the first PostgreSQL database instead.
warnings.warn(
Got an error creating the test database: permission denied to create database```
настройка моих баз данных в файле settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': '####',
'USER': '#####',
'PASSWORD': '#############',
'HOST': 'chunee.db.elephantsql.com',
'PORT':'',
}
}
}
Убедитесь, что вы предоставили все необходимые привилегии пользователю, которого вы создали для управления базой данных.
Используя psql, вы можете сделать это с помощью следующей команды:
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;
Дополнительно необходимо установить psycopg2, чтобы БД postgres работала в паре с Django.
В терминале выполните следующее:
pip install psycopg2
Надеюсь, это помогло решить вашу проблему ^^