我在syncdb时应该使用什么密码?

时间:2013-10-18 07:39:16

标签: python django postgresql passwords syncdb

嗨我在django非常环保,只是学习了python。我正在努力把事情做好。现在道歉!

我安装了django和python(Windows 7)。到目前为止,教程中的所有内容都有效(有点)。现在尝试syncdb我的第一个数据库,如教程帖子。我在myadmin III中创建了一个名为posts的文件,我的setting.py文件看起来像..

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': os.path.join(BASE_DIR, 'C:/Program Files/PostgreSQL/9.3/data/base/polls.db'),
        'PASSWORD': '',

但是我得到了这个错误(等等)

conn = _connect(dsn, connection_factory=connection_factory, async=async)
django.db.utils.OperationalError: fe_sendauth: no password supplied

dbase似乎没有设置密码,也没有postgresql中的服务器连接。所以不知道我需要做什么?

我应该使用什么密码?

非常感谢!

2 个答案:

答案 0 :(得分:3)

我假设通过本教程,您正在使用开发服务器(manage.py runserver)处理本地计算机。在这种情况下,我建议只使用sql lite,因为它似乎是在您的设置中尝试。

以下应该可以正常工作以使syncdb工作。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3', 
        'NAME': os.path.join(BASE_DIR, 'polls.db'), #name field represents filepath for sqlite
    }
}

如果您想使用postgres的本地实例,则需要在name参数中指定数据库名称。它看起来更像是

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.postgresql_psycopg2',
    'NAME': 'polls', # name of psql db on your running database server
    'HOST': 'localhost', #assuming psql is running locally
    'PORT': 5432,
    'USER': 'username', #admin username that you set up with no password
    'PASSWORD': '', 
  }
}

答案 1 :(得分:0)

您应该在postgres中创建一个用户并使用此帐户的设置(用户和通行证)。