今日私はサーバー上でdjangoプロジェクトを展開したいと思っていました。私は、サーバー上でpython manage.py runserver
を実行すると、端末は私にこの例を示しますdjango:django.core.exceptions.AppRegistryNotReady:アプリケーションはまだロードされていません
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", line 351, in execute_from_command_line
utility.execute()
File "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", line 343, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", line 177, in fetch_command
commands = get_commands()
File "/usr/lib/python2.7/site-packages/django/utils/lru_cache.py", line 101, in wrapper
result = user_function(*args, **kwds)
File "/usr/lib/python2.7/site-packages/django/core/management/__init__.py", line 72, in get_commands
for app_config in reversed(list(apps.get_app_configs())):
File "/usr/lib/python2.7/site-packages/django/apps/registry.py", line 137, in get_app_configs
self.check_apps_ready()
File "/usr/lib/python2.7/site-packages/django/apps/registry.py", line 124, in check_apps_ready
raise AppRegistryNotReady("Apps aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
をサーバ上でDjangoのバージョンは1.8.5で、地元は1.8.1です。バージョンによってこの問題が発生する可能性があるとは思っていません。ここで
import os
import sys
path = '/Users/Peterhon/Desktop/dict/'
if path not in sys.path:
sys.path.append(path)
os.chdir(path)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "dict.settings")
import django
django.setup()
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
manage.py
ファイルです:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "dict.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.arg)
私は、サーバー上のpython manage.pyチェックを実行し、出力は以下の通りです。しかし、私はまたここにwsgi.py
だ、wsgi.py
が適切に書かれていませんでした疑っ:
#!/usr/bin/env python
import os
import sys
if __name__ == "__main__":
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "dict.settings")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
誰でも私にいくつかのヒントを教えてください。ありがとうございました
あなたの 'manage.py'ファイルはどのようなものですか?あなたはそれをカスタマイズしましたか? – jamesc
また、システムチェックから得られる出力は何ですか? 'python manage.py check' – jamesc
@ jamesc私は' manage.py'ファイルをカスタマイズしていません。 :-( –