Django не может найти переменные .evn? decouple.UndefinedValueError: ENVIORNMENT не найден. Объявите его как envvar или определите значение по умолчанию
Я новичок в Django и пытаюсь настроить python-decouple на использование переменных .env. Я получаю сообщение DB_PASSWORD not found. Объявите его как envvar или определите значение по умолчанию. при попытке запустить сервер. Файл .env находится в корневом каталоге. Вот мой код:
raise UndefinedValueError('{} not found. Declare it as envvar or define a default value.'.format(option))
decouple.UndefinedValueError: ENVIORNMENT not found. Declare it as envvar or define a default value.
settings.py
from decouple import config
from secrets_manager import get_secret
environment = config("ENVIRONMENT")
SECRET_KEY = get_secret(environment).get("SECRET_KEY")
DEBUG = config("DEBUG", default=False, cast=bool)
DATABASES = {
"default": {
"ENGINE": config("DB_ENGINE"),
"NAME": config("DATABASE_NAME"),
"USER": config("DB_USER"),
"PASSWORD": config("DB_PASSWORD"),
"HOST": config("DB_HOST"),
"PORT": config("DB_PORT", cast=int),
"OPTIONS": {
"init_command": "SET foreign_key_checks = 0;",
},
}
}
.env
SECRET_KEY='nvyj6_-&m@lg87$%l3@@#+r046ioem^18+ql*)t)'
DEBUG=True
DB_ENGINE=django.db.backends.mysql
DATABASE_NAME=blogs
DB_USER=root
DB_PASSWORD=
DB_HOST=127.0.0.1
DB_PORT=3306
Django==3.1.4 python-decouple==3.3
Вы используете config('ENVIRONMENT')
в своем коде без соответствующей настройки ENVIRONMENT
в вашем .env
файле. Убедитесь, что:
- ваш файл
.env
находится в корневом каталоге вашего проекта. - вы пишете
ENVIRONMENT
последовательно в вашем.env
файле и в вашемsettings.py
файле везде, где вы его используете.