Пароль базы данных запрашивается при запуске «manage.py test» - PullRequest
2 голосов
/ 18 января 2010

Когда я пытаюсь запустить

manage.py test

отображается запрос пароля базы данных.

Раньше тесты запускались без необходимости вручную вводить пароль базы данных. Я только что обновил свою базу данных до postgres 8.4. Я предполагаю, что это какая-то настройка, которую я забыл.

Как настроить его для запуска тестов без запроса пароля?

Дополнительная информация :

Я создал базу данных с пользователем 'postgres', но я обращаюсь в django с пользователем 'postgis'. Я проверил разрешения этих пользователей, и они одинаковы.

При запуске теста базы данных и таблицы создаются нормально (пароль не запрашивается). Только когда он устанавливает «Custom SQL», пароль запрашивается.

РАЗРЕШЕНИЕ

Как указал Карл, ~ / .pgpass файл [* nix] и% APPDATA% \ postgresql \ pgpass.conf (где% APPDATA% относится к подкаталогу Application Data в профиле пользователя) [windows] позволяет вам настроить базы данных, поэтому вам не нужно каждый раз вводить пароль.

См. Документацию postgres: Файл паролей

Я проверил свою конфигурацию, и похоже, что этот файл был автоматически создан. Я обновил свой файл паролей, и теперь тесты django запускаются без необходимости вручную вводить пароль при каждой пользовательской установке sql.

Ответы [ 2 ]

1 голос
/ 18 января 2010

Тесты Django используют другую базу данных; настройки DATABASE_NAME с добавлением "_test". Моим первым предположением будет то, что где-то в вашей конфигурации аутентификации Postgres (в файле pg_hba.conf или в файле ~ / .pgpass) вы разрешаете доступ к DATABASE_NAME без пароля, но у вас нет такой же конфигурации для DATABASE_NAME_test.

0 голосов
/ 18 января 2010

Полагаю, это какая-то настройка забывание.

Не пытаюсь одурачить вас, но иногда пропускаются простые решения: Вы установили параметр DATABASE_PASSWORD в своем файле settings.py?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...