Ошибка: Настройки Django "Параметр SECRET_KEY не должен быть пустым".
У меня проблема, о которой уже спрашивали раньше, но я думаю, что этот случай особенный. Проблема возникает потому, что он не находит "SECRET_KEY", но, как я покажу ниже, он установлен.
Чтобы лучше понять конфигурацию моих настроек, они разделены на следующие файлы: settings/base.py, settings/dev.py и settings/prod.py. Из файла base.py остальные настройки импортируют свои конфигурации. Далее я оставлю вам все конфигурации.
base.py
dev.py
from portfolio.settings.base import *
DEBUG = True
SECRET_KEY = os.environ.get(
'SECRET_KEY',
'blabladev'
)
ALLOWED_HOSTS = [
'127.0.0.1',
'localhost',
]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'portfolio',
'USER': 'xxxx',
'PASSWORD': 'xxxx',
'HOST': 'localhost',
'PORT': '5432',
}
}
prod.py
from portfolio.settings.base import *
DEBUG = False
SECRET_KEY = os.environ.get(
'SECRET_KEY',
'blablaprod'
)
ALLOWED_HOSTS = [
'devcode.la',
]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': os.environ.get('DB_NAME', ''),
'USER': os.environ.get('DB_USER', ''),
'PASSWORD': os.environ.get('DB_PASSWORD', ''),
'HOST': os.environ.get('DB_HOST', ''),
'PORT': os.environ.get('DB_PORT', ''),
}
}
На самом деле, проект прекрасно выполняется следующей командой:
python manage.py runserver --settings=portfolio.settings.dev
Но он выдает ошибку при запуске:
python manage.py makemigrations
Ошибка:
raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.