7

これらの行を「pythonmanage.pyshell」から実行しました。

from django.db import connection
cursor = connection.cursor()

しかし、次のエラーが発生しました。

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/usr/local/lib/python2.7/dist-packages/django/db/backends/__init__.py", line 306, in cursor
    cursor = self.make_debug_cursor(self._cursor())
  File "/usr/local/lib/python2.7/dist-packages/django/db/backends/postgresql_psycopg2/base.py", line 177, in _cursor
    self.connection = Database.connect(**conn_params)
  File "/usr/lib/python2.7/dist-packages/psycopg2/__init__.py", line 179, in connect
    connection_factory=connection_factory, async=async)
OperationalError: FATAL:  role "jay" does not exist

settings.pyにあります

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2', 
        'NAME': 'mysite',                     
        'USER': '',                     
        'PASSWORD': '',                  
        'HOST': '',                      
        'PORT': '',                     
    }
}

私はここで何が間違っているのですか?postgresqlとアダプターをインストールしました

4

2 に答える 2

10

致命的:役割「ジェイ」は存在しません

USERは空白なので、ローカルユーザー名()jayを使用しており、その名前でPostgreSQLユーザーを作成していません。

試す:

psql -u postgres createuser -P jay

authメソッドとして使用しているsettings.py場合を除き、プロンプトで入力したパスワードをに入力する必要があります。pg_hba.confident

于 2012-09-07T11:12:09.867 に答える
1

ユーザー名を指定していないため、postgresqlは、データベースに接続するためにdjangoが実行されているオペレーティングシステムのユーザーのユーザー名を使用しています。発生しているエラーは、そのユーザー(jay)がデータベースで定義されていないことを示しています。

mysite考えられる解決策は、データベースの所有者のユーザー名とパスワードの名前を提供することです。また、ホストとして追加localhostして、postgresqlがdjangoプロセスを所有するユーザー名を使用する代わりにユーザー/パスワード認証を使用するようにします。

于 2012-09-07T11:11:23.820 に答える