Django settings.py Ошибка: импорт по имени файла не поддерживается - PullRequest
3 голосов
/ 04 января 2012

Я использую Django в виртуальной среде (используя virtualenv) и пытаюсь добавить файл настроек пользовательской среды разработки, чтобы упростить настройку приложения при разработке. Мой план состоял в том, чтобы сделать это с двумя строками кода

if os.environ.get('DEVELOPMENT', None):
    from login import settings_dev

Я также пробовал import settings_def и from login.settings_dev import *. Мой файл settings_dev.py находится в той же директории, что и мой файл settings.py, а мое приложение находится в папке с именем login. Когда я запускаю python login/manage.py syncdb, я получаю эту ошибку:

Error: Import by filename is not supported.

Мой поиск продолжает вызывать DJANGO_SETTINGS_MODULE (хотя я не уверен, как это влияет на все это - первое приложение Django:]), поэтому, к вашему сведению, он установлен в моем файле settings.py следующим образом:

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

Я также пытался экспортировать его в свой терминал, но я получаю ту же ошибку.

Кто-нибудь знает, как я могу это исправить / что я здесь не так делаю?

Ответы [ 3 ]

6 голосов
/ 24 июля 2017

Убедитесь, что при передаче относительного адреса файла используется "." вместо "/".

Я столкнулся с той же ошибкой, что и на самом деле

"музыка / URLs"

Но это должно быть

"music.urls"

1 голос
/ 16 июня 2018

У меня была похожая ошибка при выполнении команды runserver, и, наконец, я обнаружил, что эта ошибка возникает из-за несовместимости версии Python с установленной версией django.В моей системе есть две версии python, и у меня был запущен сервер django от неправильной.Надеюсь, это может быть полезно для кого-то.

1 голос
/ 04 января 2012

В оригинальном settings.py, в самом конце:

try:
    from settings_dev import *
except ImportError:
    pass

Создайте settings_dev.py в том же каталоге, что и settings.py, и добавьте в него две строки в самом верху:

import sys
globals().update(vars(sys.modules['settings']))

Теперь добавьте в этот файл все необходимые параметры разработки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...