【发布时间】:2020-08-23 11:23:41
【问题描述】:
我有一个 Django 的 GitHub 工作流,当它要迁移数据库时,它给出了错误
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.
密钥存储在.env 文件中并加载
from dotenv import load_dotenv
load_dotenv()
from pathlib import Path
env_path = Path('.') / '.env'
load_dotenv(dotenv_path=env_path)
SECRET_KEY = os.getenv("secret_key")
这是文件树
C:.
| db.sqlite3
| manage.py
|
\---djangosite
| .env
| asgi.py
| settings.py
| urls.py
| wsgi.py
| __init__.py
|
\---__pycache__
...
这是manage.py,它是从settings.py 加载.env 代码的常规django 代码
#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
from dotenv import load_dotenv
load_dotenv()
from pathlib import Path
env_path = Path('.') / '.env'
load_dotenv(dotenv_path=env_path)
import os
import sys
def main():
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'djangosite.settings')
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line(sys.argv)
if __name__ == '__main__':
main()
当我在我的 PC 上运行 manage.py 时,它会加载密钥并运行服务器,但 GitHub 给出了上述错误。
如何阻止此错误发生?
【问题讨论】:
-
您确定问题与您的
.gitignore无关? -
你是什么意思@AzyCrw4282
-
您是否将您的
.env文件包含在.gitignore文件中? -
不,.env 在 GitHub 中并且有一个密钥
-
你能更新你的
file hierarchy和manage.py吗?
标签: python django github-actions