1

Heroku / Django / Postgres ゲームは初めてで、チュートリアルの指示に従った後、問題が発生しました。これが私のセットアップです:

インストール済み: Django 1.4.5 dj_database_url Postgress.app 9.2.2.0

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
    'NAME': 'db_name',                      # Or path to database file if using sqlite3.
    'USER': '',                      # Not used with sqlite3.
    'PASSWORD': '',
    'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
    'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
 }
}

その後、settings.py で:

import dj_database_url
    DATABASES['default'] = dj_database_url.config()

python manage.py syncdb を実行すると:

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
   execute_from_command_line(sys.argv)
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-         packages/django/core/management/__init__.py", line 443, in execute_from_command_line
utility.execute()
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-packages/django/core/management/__init__.py", line 382, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-packages/django/core/management/base.py", line 196, in run_from_argv
self.execute(*args, **options.__dict__)
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-packages/django/core/management/base.py", line 232, in execute
output = self.handle(*args, **options)
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-packages/django/core/management/base.py", line 371, in handle
return self.handle_noargs(**options)
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 57, in handle_noargs
cursor = connection.cursor()
  File "/Users/joerobinson/.virtualenvs/dg/lib/python2.7/site-packages/django/db/backends/dummy/base.py", line 15, in complain
raise ImproperlyConfigured("settings.DATABASES is improperly configured. "
django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.

python manage.py shell を実行し、設定をインポートして DATABASES を見ると、次のようになります。

{'default': {'ENGINE': 'django.db.backends.dummy', 'TEST_MIRROR': None, 'NAME': '', 'TEST_CHARSET': None, 'TIME_ZONE': 'UTC', 'TEST_COLLATION': None, 'PORT': '', 'HOST': '', 'USER': '', 'TEST_NAME': None, 'PASSWORD':

したがって、何かを不適切に構成しているに違いないことはわかっていますが、一晩検索しても適切な設定が見つかりませんでした。これを前に見た人はいますか?

4

3 に答える 3

1

ではなく、実際の Django データベース バックエンドが必要な場合がありdjango.db.backends.dummyます。例えば:

{'ENGINE': 'django.db.backends.postgresql_psycopg2', ... }
于 2013-02-26T08:40:04.820 に答える
0

データベース URL を次のように構成する必要がありました。

DATABASES['default'] = dj_database_url.config(default='postgres://localhost/db_name')

psycopg2 パッケージと gcc-4.2 に関連する他の問題がありましたが、それらは私の元の投稿ではカバーされていません。

于 2013-03-11T02:41:16.297 に答える
0

dummy/base.py を削除してシンボリック リンクを作成することで、同じ問題を解決しました。

ln -s /usr/lib/python2.6/site-packages/django/db/backends/sqlite3/base.py /usr/lib/python2.6/site-packages/django/db/backends/dummy/base.py
于 2013-07-28T08:19:24.253 に答える