django - 设置环境变量后,我的 Django 项目中仍然出现 KeyError: 'SECRET_KEY'
问题描述
我在我的 pipenv 虚拟环境 bin/activate (linux) 或 scripts\activate(windows) 文件中为我的 django 项目创建了环境变量,我在设置文件中进行了必要的更改,并退出并重新激活了虚拟环境,但我仍然得到一个keyerror(我正在使用 Windows 机器)
settings.py 中的变量
SECRET_KEY = os.environ['SECRET_KEY']
EMAIL_HOST_PASSWORD = os.environ['EMAIL_HOST_PASSWORD']
virtualenv\scripts\activate 文件中的 evnvironment 变量
export SECRET_KEY= "mysecretkey"
export EMAIL_HOST_PASSWORD= "mypassword"
错误
File "C:\Users\Dell\.virtualenvs\team-272-SMES-Server-dSgdZ4Ig\lib\os.py", line 673, in __getitem__
raise KeyError(key) from None
KeyError: 'SECRET_KEY'
解决方案
确保您的 os.environ 中有“SECRET_KEY”
使用此代码检查您是否有“SECRET_KEY”:
import os
import pprint
# Get the list of user's
# environment variables
env_var = os.environ
# Print the list of user's
# environment variables
print("User's Environment variable:")
pprint.pprint(dict(env_var), width = 1)
您可能在环境变量列表中缺少“SECRET_KEY”。您可以添加一个变量:
# importing os module
import os
# Add a new environment variable
os.environ['GeeksForGeeks'] = 'www.geeksforgeeks.org'
推荐阅读
- java - 单元测试,怎么测试?想要但未在 Mockito.verify 上调用
- java - 高并发 Apache HTTP Server SSL 问题
- javascript - 从所有类都相同的特定类中获取文本-Selenium-Javascript
- python - Python:查找方法以匹配来自两个数据帧的相似但不相同的名称
- microsoft-teams - Azure Bot Framework - MS Team 集成 - 语音功能
- google-apps-script - Google 表格插件侧边栏点击事件不适用于某些用户
- sql - 根据另一列中的更改创建带有时间戳的最后修改列
- google-cloud-platform - 谷歌云平台 - 项目消失了
- sql-server - 将数据从一个表拆分到另一个表
- request - 浏览器 Axios 获取文件但响应未定义