在Linux / django / python / postgres安装中仍然是新的。
我安装了最新的kubuntu 11.04,安装了postgres和django软件包。 我已经在postgres中创build了一个django_login和一个数据库django_db,供django使用。
当我在数据库中创build基本django框架的时候,我有一些麻烦。 如果我键入,它工作正常
sudo -u django_login python manage.py syncdb
但是当我不使用sudo -u django_login时,它不起作用。 不过,我的帐户是在postgres superadmin,我创build了一个系统帐户django_login和我的帐户是这个组的一部分。
我错过了什么?
您错过了您在PostgreSQL中创build的帐户以供系统帐户( ident )使用。 如果您希望帐户通过PostgreSQL客户端库使用用户名和密码,则需要使用其他身份validation方法之一 。
让djangologin到Postgresql数据库的更简单的方法是使用密码。 打开你的pg_hba.conf文件(/etc/postgresql/8.4/main/pg_hba.conf)。 改变线
local all all ident
至
local all all md5
现在Postgresql会让django使用用户名和密码login,而不需要Unix内置的ident系统。
尝试在settings.py文件中指定127.0.0.1作为数据库主机。 这样django使用不同的authentication方法。