Я работаю над настройкой Django Project для running tests
. Но я получаю ниже ошибки:Django Test: ошибка создания тестовой базы данных: разрешение на копирование базы данных «template_postgis»
Got an error creating the test database: permission denied to copy database "template_postgis"
Примечание: база данных моего приложения по умолчанию в работает нормально. issue is happening while running tests
.
полный стек след как:
[email protected]:~/workspace/mozio$ python manage.py test --verbosity=3
nosetests --verbosity=3
nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$']
Creating test database for alias 'default' ('test_my_db')...
Got an error creating the test database: permission denied to copy database "template_postgis"
Type 'yes' if you would like to try deleting the test database 'test_mozio_db_test', or 'no' to cancel: yes
Destroying old test database 'default'...
Got an error recreating the test database: must be owner of database test_mozio_db_test
Ниже конфигурации базы данных из setting.py
:
POSTGIS_VERSION = (2, 2, 2)
DATABASES = {
'default': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'my_db',
'USER': 'my_user',
'PASSWORD': 'my_pass',
'HOST': '<HOST_IP',
'PORT': '',
'TEST': {
'NAME': 'test_my_db',
},
}
}
Любая помощь в отношении этого? Ниже приведены шаги, которые я пробовал:
Грант создать доступ DB к пользователю:
ALTER USER my_user CREATEDB;
предоставить все привилегии для пользователя для
test_my_db
базы данных:GRANT ALL PRIVILEGES ON DATABASE test_mozio_db_test to mozio;
Edi т: После закрепления выше вопроса, я также получаю ошибку как:
django.db.utils.ProgrammingError: type "geometry" does not exist
LINE 5: "polygon" geometry(POLYGON,4326) NOT NULL,
Обновленный мой ответ, чтобы исправить обе эти проблемы.
Я добавил ответ. В моей системе все было установлено, и приложение приложения по умолчанию работало. Но проблема была только в тестовой базе данных. –
@Moinuddin, как по ошибке, говорит, что вы получаете доступ к базам данных шаблонов, которые автоматически создаются. Я не знаю, почему вы хотите получить к ним доступ, но лучше создать свою собственную базу данных и связать ее с settings.py – Sagar
Но если вы удовлетворены своим ответом, все в порядке. – Sagar