여러분,이 질문을 수 백만 번 받았다는 것을 알고 있습니다. Django 설문 조사에서 만든 앱 (Django 자습서에서 만든 앱)을 Google 클라우드 SQL을 사용하여 Google 앱 엔진에서 실행하려고하면 DJANGO_SETTINGS_MODULE이 정의되지 않은 오류가 발생합니다. 여기 GAE 서버에서 django_settings_module이 정의되지 않았습니다.
는 구글 애플리케이션 엔진 로그 나에게 주어진 실제 스택 추적입니다 :Traceback (most recent call last):
File "/base/python27_runtime/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 223, in Handle
result = handler(dict(self._environ), self._StartResponse)
File "/base/python27_runtime/python27_lib/versions/third_party/django-1.4/django/core/handlers/wsgi.py", line 219, in __call__
self.load_middleware()
File "/base/python27_runtime/python27_lib/versions/third_party/django-1.4/django/core/handlers/base.py", line 39, in load_middleware
for middleware_path in settings.MIDDLEWARE_CLASSES:
File "/base/python27_runtime/python27_lib/versions/third_party/django-1.4/django/utils/functional.py", line 184, in inner
self._setup()
File "/base/python27_runtime/python27_lib/versions/third_party/django-1.4/django/conf/__init__.py", line 40, in _setup
raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE)
ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.
Google 앱 엔진과 함께 제공하지만 관리 dev_appserver.py에서 실행하려고 할 때 나는 같은 오류가 발생했다 애플리케이션 제목을 파일에
env_variables:
DJANGO_SETTINGS_MODULE: 'DjangoTut.settings'
을 추가하여 그것을 해결합니다.
내 프로젝트 디렉토리는 다음과 같습니다
- DjangoTut
- DjangoTut
- 초기화 평
- settings.py
- urls.py
- wsgi.py을 개
- 여론 조사
- 초기화 평
- admin.py
- models.py
- tests.py
- urls.py
- views.py
- app.yaml ,
- manage.py
- DjangoTut
내 애플리케이션 제목 파일은 다른 모든 파일은 내가
를 추가하는 시도 https://docs.djangoproject.com/en/1.4/intro/tutorial01/여기에 제안 된 것과 동일하다이
application: hochotime
version: 10
runtime: python27
api_version: 1
threadsafe: true
libraries:
- name: django
version: "1.4"
builtins:
- django_wsgi: on
env_variables:
DJANGO_SETTINGS_MODULE: 'settings'
처럼 보인다
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'DjangoTut.settings'
거의 모든 단일 파이썬 파일의 시작 부분에 있지만 아무 소용이 없습니다. 설정 디렉토리를 app 디렉토리가 아닌 프로젝트 디렉토리로 옮기고 모든 설정을 '설정'으로 바꾸기 위해 os.environ['DJANGO_SETTINGS_MODULE']
을 변경하려고했습니다. 나는 또한 여기에 표시된대로 직접 설정을 시도했다 https://docs.djangoproject.com/en/dev/topics/settings/#using-settings-without-setting-django-settings-module 그래도, 나는 Google 서버에서 실행하려고 할 때마다 동일한 오류가 발생합니다.
도움을 주시면 감사하겠습니다.
나는 장고 - nonrel를 사용하고 있지 않다 cloud-sql/django. 그건 내 app.yaml 파일의 전체 그러나 그 추가 사항을 시도하고 그것은 외로운 threadsafe (분명히 이것은 오류 던졌습니다) 확인 yaml 파일을 변경하고 난 여전히 둘 다 로컬로 실행하고 그것을 업로드 할 때 오류가 발생합니다. 구글 서버. – Scott