Я создал новый проект с cookjecutter django. Я установил переменную окружения DJANGO_READ_DOT_ENV_FILE = True (, устанавливая ее в False, также вызывает чтение .ENV-файла. Кстати, на python предполагается, что переменная среды True является строкой, а не bool).запуск запуска django runerver с использованием локальных настроек, когда продукция была идентифицирована в .env-файле
В .env файле есть следующая строка:
DJANGO_SETTINGS_MODULE=config.settings.production
Когда я бегу
python manage.py runserver
Я получаю следующий вывод:
Loading : /home/bucket/src/b2b/.env
The .env file has been loaded. See common.py for more information
Loading : /home/bucket/src/b2b/.env
The .env file has been loaded. See common.py for more information
Performing system checks...
System check identified no issues (0 silenced).
February 14, 2017 - 20:20:55
Django version 1.10.5, using settings 'config.settings.local'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Согласно выше, конфигурация сервера - config.settings.local. Я знаю, что файл .env загружается, так как переменная DATABASE_URL
верна и подключается к базе данных.
Он также выглядит как код для загрузки переменных из файла .env выполняется дважды. Я помещал некоторые операторы печати в common.py и local.py для отслеживания выполнения с приведенными ниже результатами.
Loading : /home/bucket/src/b2b/.env
The .env file has been loaded. See common.py for more information
End of common.py <--
End of local.py <--
Loading : /home/bucket/src/b2b/.env
The .env file has been loaded. See common.py for more information
End of common.py <--
End of local.py <--
Performing system checks...
System check identified no issues (0 silenced).
February 14, 2017 - 20:22:40
Django version 1.10.5, using settings 'config.settings.local'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
Любая помощь или разъяснения в отношении этого поведения будут оценены.
Я думаю, что вы могли бы ударить пару вопросов в Cookiecutter -Django. [Выпуск 1039] (https://github.com/pydanny/cookiecutter-django/issues/1039) должен исправить проблему, когда среда читается, когда 'DJANGO_READ_DOT_ENV_FILE = False'. [Это коммит] (https://github.com/pydanny/cookiecutter-django/commit/3cd57880e0bfa3d48ecd338fabe7f74e71800f01) может решить проблему, когда среда читалась дважды. – Alasdair
Я удалил избыточный вызов env, и он все равно вызывается дважды. Я был тем, кто отправил Issue 1039 :-) –
Файлы настроек загружаются дважды только при работе с сервером. Если я выполняю миграцию, оболочку или другую команду, она запускает их только один раз. –