Конфигурация SECRET_KEY не должна быть пустой

Я создаю проект в Джанго с app названным Blog, конфигурирую файл settings.py но у меня есть проблемы с SECRET_KEY, я не знаю, почему у меня выходит ошибка из, который я не могу содержать этот пустой ключ. Моя конфигурация:

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME':         'blog',
    'USER':         'xxxx',
    'PASSWORD':     'xxxx',
    'HOSTNAME':      '',
    'PORT':          '',
  }
}


SECRET_KEY = '18x&q4kb9oa!qz-7wg(nk#0%w-=49$ylj1gtn1n6^e0pe@@8ge'

Вся конфигурация следует быть хорошо, я содержу SECRET_KEY, но в момент применения миграций для начальной конфигурации Джанго, у меня выходит эта ошибка:

Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 190, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 40, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/migrate.py", line 19, in <module>
from django.db.migrations.autodetector import MigrationAutodetector
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/autodetector.py", line 13, in <module>
from django.db.migrations.questioner import MigrationQuestioner
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/questioner.py", line 12, in <module>
from .loader import MIGRATIONS_MODULE_NAME
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/loader.py", line 10, in <module>
from django.db.migrations.recorder import MigrationRecorder
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/recorder.py", line 9, in <module>
class MigrationRecorder(object):
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/recorder.py", line 23, in MigrationRecorder
class Migration(models.Model):
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/recorder.py", line 24, in Migration
app = models.CharField(max_length=255)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/fields/__init__.py", line 1081, in __init__
super(CharField, self).__init__(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/fields/__init__.py", line 161, in __init__
self.db_tablespace = db_tablespace or settings.DEFAULT_INDEX_TABLESPACE
File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 48, in __getattr__
self._setup(name)
File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 44, in _setup
self._wrapped = Settings(settings_module)
File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 113, in __init__
raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must    not be empty.

Я проверил какое-то решение и оказывается, что в каких-то blogs они говорят о как будто ты изменил имя проекта ты, должно быть, конфигурируешь manage.py как останься:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite_project.settings")

Но конфигурация довольно сделана, я не знаю действительно, почему я получаю эту ошибку.

5
задан 06.03.2016, 06:18
3 ответа

Если конфигурируешь ты SECRET_KEY правильно и получаешь сообщение:

ImproperlyConfigured: The SECRET_KEY setting must not be empty.

DeberГ, - Чтобы быть достаточным как ты комментируешь несмотря на то, что добавляешь в тебе manage.py:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "projecto.settings.local")

прокомментировал Тебе в моем случае солитера то же сообщение ошибки, но он был вызван из-за того, что определял engine или неправильное имя базы данных:

DATABASES = {
    'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME':   'blog',
    }
}

уверяет, что эти данные правильны.

1
ответ дан 24.11.2019, 14:47

Друг, я encontrГ© один snippet, который производит мне ключ в файле .txt каждый раз, когда нет ключа, и груза, если файл существует. Эта configuraciГіn может решать твою проблему:

# SECURITY WARNING: keep the secret key used in production secret!
try:
    SECRET_KEY
except NameError:
    SECRET_FILE = os.path.join(BASE_DIR, 'quotation', 'secret.txt')
    try:
        SECRET_KEY = open(SECRET_FILE).read().strip()
    except IOError:
        try:
            import random

            SECRET_KEY = ''.join(
                [random.SystemRandom().choice('abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*(-_=+)') for i in range(50)]
            )
            secret = open(SECRET_FILE, 'w')
            secret.write(SECRET_KEY)
            secret.close()
        except IOError:
            Exception('Please create a %s file with random characters \
            to generate your secret key!' % SECRET_FILE)
0
ответ дан 24.11.2019, 14:47

Ты должен менять это на manage.py и tambiГ©n в wsgi.py, эти ты должен указывать на твой "production.py", или если sГіlo ты делаешь доказательства твоему settings.py

0
ответ дан 24.11.2019, 14:47