2

Djangoの設定に問題があります。私のアプリはapp-engine-patchで実行されます。djangoなしで実行され、app.yamlハンドラーを介して直接アクセスできるスクリプトを追加しました。次に、このエラーが発生します。

File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/conf/__init__.py", line 53, in _import_settings
raise EnvironmentError, "Environment variable %s is undefined." % ENVIRONMENT_VARIABLE
<type 'exceptions.EnvironmentError'>: Environment variable DJANGO_SETTINGS_MODULE is undefined.

私はグーグルでこのヒントを見つけました:

# Force Django to reload its settings.
from django.conf import settings
settings._target = None

# Must set this env var before importing any part of Django
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' 

しかし、私はこのエラーが発生しました:

raise EnvironmentError, "Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE, e)
<type 'exceptions.EnvironmentError'>: Could not import settings 'settings.py' (Is it on sys.path? Does it have syntax errors?): No module named ragendja.settings_pre

app-engine-patchパスの変更に問題があると思いますが、settings_preを正しくインポートするにはどうすればよいですか?

ありがとう!

4

2 に答える 2

3

変化する

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings.py' 

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

の値は、モジュールへのパスではなくDJANGO_SETTINGS_MODULE、モジュールの名前です(つまり、importPythonスクリプトのステートメントに記述します)。

于 2010-08-26T22:31:35.263 に答える
0

別の質問のおかげで、私はbeinningを次のように置き換えました:

from common.appenginepatch.aecmd import setup_env 
setup_env(manage_py_env=True)

これによりすべての設定がインポートされ、Djangoを参照せずにタスクを実行できます

于 2010-09-01T01:41:08.453 に答える