Pythonanywhere - ImportError: No module named 'myapp.settings'

Pythonanywhere - ImportError: No module named 'myapp.settings'

使用 Python 3.5 和 Django 1.9,我试图将我的应用程序部署到 pythonanywhere,但我不断收到此错误

2016-10-07 01:44:28,879 :Error running WSGI application
Traceback (most recent call last):
  File "/bin/user_wsgi_wrapper.py", line 154, in __call__
    app_iterator = self.app(environ, start_response)
  File "/bin/user_wsgi_wrapper.py", line 170, in import_error_application
    raise e
  File "/bin/user_wsgi_wrapper.py", line 154, in __call__
    app_iterator = self.app(environ, start_response)
  File "/bin/user_wsgi_wrapper.py", line 170, in import_error_application
    raise e
  File "/bin/user_wsgi_wrapper.py", line 179, in <module>
    application = load_wsgi_application()
  File "/bin/user_wsgi_wrapper.py", line 175, in load_wsgi_application
    return __import__(os.environ['WSGI_MODULE'], globals(), locals(), ['application']).application
  File "/var/www/nidalmer_pythonanywhere_com_wsgi.py", line 21, in <module>
    application = StaticFilesHandler(get_wsgi_application())
  File "/home/nidalmer/trailersapp/myvenv/lib/python3.5/site-packages/django/core/wsgi.py", line 13, in get_wsgi_application
    django.setup()
  File "/home/nidalmer/trailersapp/myvenv/lib/python3.5/site-packages/django/__init__.py", line 17, in setup
    configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
  File "/home/nidalmer/trailersapp/myvenv/lib/python3.5/site-packages/django/conf/__init__.py", line 55, in __getattr__
    self._setup(name)
  File "/home/nidalmer/trailersapp/myvenv/lib/python3.5/site-packages/django/conf/__init__.py", line 43, in _setup
    self._wrapped = Settings(settings_module)
  File "/home/nidalmer/trailersapp/myvenv/lib/python3.5/site-packages/django/conf/__init__.py", line 99, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "/home/nidalmer/trailersapp/myvenv/lib/python3.5/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named 'trailersapp.settings'

这是我的wsgi.py文件

import os

import sys

path = '/home/nidalmer/trailersapp/trailers/settings.py'

if path not in sys.path:
    sys.path.append(path)

from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "trailers.settings")

application = get_wsgi_application()

还有我的树:

trailersapp
├── db.sqlite3
├── manage.py
├── movies
│   ├── __init__.py
│   ├── __pycache__
│   ├── admin.py
│   ├── apps.py
│   ├── forms.py
│   ├── migrations
│   ├── models.py
│   ├── templates
│   ├── tests.py
│   ├── urls.py
│   └── views.py
├── myvenv
├── requirements.txt
├── static
│   ├── admin
│   └── movies
└── trailers
    ├── __init__.py
    ├── __pycache__
    ├── settings.py
    ├── urls.py
    └── wsgi.py

我不知道错误是从哪里来的,因为我的 wsgi 文件说的是 trailers.settings 而不是 trailersapp.settings 而我在任何地方都没有。

如有任何帮助,我们将不胜感激!

你的wsgi文件路径有误。它应该是您的应用程序的路径,因此:

path = '/home/nidalmer/trailersapp'

此外,我认为您正在查看 wsgi 文件的旧回溯或旧副本。确保它们都是最新的。