Python 运行时请求的数据库密码";manage.py test”的缩写;

Python 运行时请求的数据库密码";manage.py test”的缩写;,python,django,Python,Django,当我试着跑的时候 manage.py test 将显示数据库密码提示 以前,测试运行时无需手动输入db密码。 我刚把数据库更新到postgres 8.4。我想这是我忘了的场景 我如何配置它来运行测试而不询问密码 其他信息: 我用用户“postgres”创建了数据库,但我正在用用户“postgis”访问django。我检查了这些用户的权限,它们是相同的 在运行测试时,数据库和表可以很好地创建(不需要密码)。 只有在安装“自定义SQL”时,才会请求密码 分辨率 正如Carl指出的~/.pgpass

当我试着跑的时候

manage.py test
将显示数据库密码提示

以前,测试运行时无需手动输入db密码。 我刚把数据库更新到postgres 8.4。我想这是我忘了的场景

我如何配置它来运行测试而不询问密码

其他信息

我用用户“postgres”创建了数据库,但我正在用用户“postgis”访问django。我检查了这些用户的权限,它们是相同的

在运行测试时,数据库和表可以很好地创建(不需要密码)。 只有在安装“自定义SQL”时,才会请求密码

分辨率

正如Carl指出的~/.pgpass文件[*nix]和%APPDATA%\postgresql\pgpass.conf(其中%APPDATA%指用户配置文件中的应用程序数据子目录)[windows]允许您配置数据库,因此您无需每次输入密码

请参阅postgres文档:

我检查了我的配置,看起来这个文件是自动创建的。我更新了密码文件,现在运行django测试,而无需在每次自定义sql安装时手动输入密码

我想这是我正在做的一些设置 忘记

不想愚弄你,但有时简单的解决方案会被忽略:
您是否在settings.py文件中设置了数据库密码设置?

Django测试使用不同的数据库;附加了“\u测试”的数据库\u名称设置。我的第一个猜测是,在您的Postgres身份验证配置中的某个地方(在pg_hba.conf或~/.pgpass文件中),您允许无密码访问数据库名称,但您没有相同的数据库名称测试配置。

您以前使用的是什么数据库?不,有。runserver运行良好,通过shell连接时没有问题。就在运行测试时。谢谢,我来看看。我在postgres配置中没有做任何特别的事情,但很可能我没有以同样的方式设置它。