Работая с VS Code 1.35.1 в Ubuntu 16.04 с виртуальной средой pipenv Python 3.7.3, я пытаюсь установить переменные среды в файле .env, но по какой-то причине файл не распознается.
Может кто-нибудь помочь мне понять, что я могу сделать, чтобы дать моему (Django) приложению доступ к переменным окружения, без необходимости вручную запускать pipenv shell
.
Предпринятые шаги:
Итак, вот что я делаю именно:
1 - Я установил интерпретатор Python для своего проекта следующим образом: ctrl + shift + p
> Python: Select interpreter
> Python 3.7.3 64-bit ('environment_name': pipenv)
2 - Создан файл .env внутри корневого каталога проекта:
# Django
SECRET_KEY="some key here"
DEBUG=True
...
3 - Убедитесь, что расширение VS Code Python установлено и включено
4 - Скорректирован мой файл настроек Django, чтобы получить SECRET_KEY из переменных среды:
SECRET_KEY = os.getenv('SECRET_KEY')
5 - Запуск сервера разработки Django из терминала VS Code (с активированной средой pipenv через ctrl + shift + ~
):
(environment-name) user@system-name:~/projects/my-project$ python manage.py runserver
6 - другие настройки не изменились
Я не изменил никаких настроек, например python.envFile
. Настройки оставлены по умолчанию.
Как я знаю, что файл .env не распознан:
Приведенные выше шаги приводят к появлению следующего сообщения в терминале кода VS:
...
raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.
Когда я запускаю pipenv shell
в том же терминале VS Code (с уже активированной средой и, таким образом, снова активирую его) и запускаю сервер разработчика Django: python manage.py runserver
, сервер отлично запускается.