2

django/postgres をローカルの django サーバーにインストールしましたが、正常に動作します。私はApacheを動かそうとしています。mod_wsgi をセットアップして、「Hello World」を取得し、Apache を再起動することができました。私はほとんどそこにいますが、localhost/index.html を起動すると、次のサーバー エラーが発生します。

TemplateSyntaxError: Caught ImproperlyConfigured while rendering: 
'django.db.backends.postgresql_psycopg2' isn't an available database 
backend. 
[Thu Sep 02 13:46:30 2010] [error] [client 127.0.0.1] Try using 
django.db.backends.XXX, where XXX is one of: 
[Thu Sep 02 13:46:30 2010] [error] [client 127.0.0.1]     'dummy', 
'mysql', 'oracle', 'postgresql', 'postgresql_psycopg2', 'sqlite3' 
[Thu Sep 02 13:46:30 2010] [error] [client 127.0.0.1] Error was: 
cannot import name utils 

mod_wsgi とバージョン psycopg に互換性がない可能性はありますか? このタイプのセットアップを試した人はいますか?

更新 1:

2.6、mod_wsgi、psycopg2 にダウングレードしましたが、Apache ログ ファイルにこのエラーが表示されます。

Fri Sep 03 12:17:41 2010] [error] [client 97.80.165.181] File "C:\Python26\lib\site-packages\django\db\__init__.py", line 77, in [Fri Sep 03 12] :17:41 2010] [エラー] [クライアント 97.80.165.181] 接続 = 接続[DEFAULT_DB_ALIAS] [2010 年 9 月 3 日金曜日 12:17:41] [エラー] [クライアント 97.80.165.181] ファイル "C:\Python26\lib\ getitem の site-packages\django\db\ utils.py "、91 行目[2010 年 9 月 3 日金曜日 12:17:41] [エラー] [クライアント 97.80.165.181] backend = load_backend(db['ENGINE']) [2010 年 9 月 3 日金曜日 12:17:41] [エラー] [クライアント 97.80.165.181 ] ファイル "C:\Python26\lib\site-packages\django\db\utils.py"、49 行目、load_backend [Fri Sep 03 12:17:41 2010] [error] [client 97.80.165.181] raise ImproperlyConfigured (error_msg) [Fri Sep 03 12:17:41 2010] [error] [client 97.80.165.181] TemplateSyntaxError: レンダリング中に不適切な構成がキャッチされました: 'django.db.backends.postgresql_psycopg2' は利用可能なデータベース バックエンドではありません。[Fri Sep 03 12:17:41 2010] [error] [client 97.80.165.181] django.db.backends.XXX を使用してみてください。XXX は次のいずれかです: [Fri Sep 03 12:17:41 2010] [error] [クライアント 97.80.165.181]
'dummy', 'mysql', 'oracle', 'postgresql', 'postgresql_psycopg2', 'sqlite3' [Fri Sep 03 12:17:41 2010] [error] [client 97.80.165.181] Error was: cannot import name utils

それが何を示しているか知っていますか?

更新 2:

原因はファイル django/db/backends/postgresql_psycopg2/base.py、バージョン 2.2.2、行番号 9: from django.db import utils にあります。

しかし、私はまだこれを修正する方法を知りません。django/db/utils.py というファイルがあるので、これで動くはずです。結局のところ、開発サーバーでも機能します。ただし、Apache + mod_wsgi には対応していません

4

1 に答える 1

1

たぶん、このチケットはあなたを助けるでしょう:

またはそれが何であれ、pythonを2.6にダウングレードし、次にmod_wsgiとpsycopg2をダウングレードすると、DjangoはApache上のPostgresで期待どおりに動作することを確認しました

于 2010-09-03T06:56:37.910 に答える