2

嗨,我在 django 非常熟悉,刚刚学习了 python。我正在努力把它设置好。所以现在道歉!

我安装了 django 和 python (windows 7)。到目前为止,教程中的所有内容都有效(某种程度上)。现在尝试在教程帖子中同步我的第一个数据库。我在 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 中设置服务器连接。所以不知道我需要做什么?

我应该使用什么密码?

非常感谢!

4

2 回答 2

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': '', 
  }
}
于 2013-10-18T07:57:45.073 回答
0

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

于 2013-10-18T16:07:28.173 回答