ImportError: Нет модуля с именем toneapp.settings - когда я запускаю python manage.py makemigrations - PullRequest
0 голосов
/ 21 марта 2019
toneapp/
  manage.py
  toneapp/
    settings/
      __init__.py
      base_settings.py
      dev_settings.py
      production_settings.py
   urls.py
   wsgi.py

feedback/
    __init__.py
    admin.py
    apps.py
    migrations/
       __init__.py
    models.py
    tests.py
    views.py

 INSTALLED_APPS = [
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
  'rest_framework',
  'registration',
  'adminpanel',
  'feedback',
]

Traceback (most recent call last):
  File "manage.py", line 15, in <module>
    execute_from_command_line(sys.argv)
  File "/root/.virtualenvs/toneapp/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/root/.virtualenvs/toneapp/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 308, in execute
    settings.INSTALLED_APPS
  File "/root/.virtualenvs/toneapp/local/lib/python2.7/site-packages/django/conf/__init__.py", line 56, in __getattr__
    self._setup(name)
  File "/root/.virtualenvs/toneapp/local/lib/python2.7/site-packages/django/conf/__init__.py", line 41, in _setup
    self._wrapped = Settings(settings_module)
  File "/root/.virtualenvs/toneapp/local/lib/python2.7/site-packages/django/conf/__init__.py", line 110, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
ImportError: No module named toneapp.settings

Ответы [ 2 ]

1 голос
/ 21 марта 2019

В вашей иерархии как-то у вас есть отдельные settings.py как base_settings.py и dev.. и production... И все они помещаются в папку настроек.

toneapp/
    settings/
      __init__.py
      base_settings.py
      dev_settings.py
      production_settings.py

Проще говоря, вы изменили иерархию по умолчанию в Django, и это является причиной ошибки, потому что когда Django ищет toneapp/settings .py, он не может ее найти. Самое простое решение - вернуться к иерархии по умолчанию и объединить все настройки в settings.py, в противном случае вам придется искать и изменять способ вызова Django settings.py и настраивать его по своему.

0 голосов
/ 21 марта 2019

Решение состоит в том, чтобы изменить os.environ.setdefault в manage.py на:

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'toneapp.settings.dev_settings')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...