我有一个针对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文件,它是普通的Django文件,并且从settings.py中加载.env代码。
#!/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()
当我在我的电脑上运行
manage.py
时,它加载密钥并运行服务器,但是在GitHub上会出现上述错误。如何停止出现这个错误?
.gitignore
无关吗? - AzyCrw4282文件层次结构
和manage.py
吗? - AzyCrw4282.vscode
的目录。工作流程是运行python manage.py test
。 - mmoomocow