获取引发KeyError(key)KeyError:在生产设置上使用django'SECRET_KEY'

sid*_*idx 9 python django keyerror

我有两个单独的设置文件用于生产和开发,以及一个常见的base.py设置文件
base.py.

SECRET_KEY = r"!@#$%^&123456"
Run Code Online (Sandbox Code Playgroud)

prod.py

from .base import *
SECRET_KEY = os.environ['SECRET_KEY']
Run Code Online (Sandbox Code Playgroud)

manage.py

#!/usr/bin/env python
import os

import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.dev")

from django.core.management import execute_from_command_line

execute_from_command_line(sys.argv)
Run Code Online (Sandbox Code Playgroud)

当我在终端输入时:

python manage.py shell --settings=entri.settings.prod
Run Code Online (Sandbox Code Playgroud)

我收到错误:

raise KeyError(key)
KeyError: 'SECRET_KEY'
Run Code Online (Sandbox Code Playgroud)

帮助我,我是django和python的新手

mu *_*u 無 11

我认为你是在本地尝试这个,并且没有SECRET_KEY在你的环境中进行设置.

使用它设置它

export SECRET_KEY="somesecretvalue"
Run Code Online (Sandbox Code Playgroud)

然后运行python manage.py shell --settings=entri.settings.prod应该工作正常.