在Django中,我使用从回购中提取的方式更新了我的git。当我运行python3 manage.py collectstatic
它会抛出“myproject”数据库不存在。真的,我没有我的项目数据库,因为在生产中我只有prod_project数据库。但是,不知何故Django是试图加载从base.py myproject的数据库,而不是从prod.pyDjango用于生产和开发的项目设置
# base.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'myproject',
'USER': 'admin',
'PASSWORD': '*****',
'ATOMIC_REQUESTS': True,
},
}
# prod.py
from .base import *
DEBUG = False
TEMPLATE_DEBUG = DEBUG
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'prod_myproject',
'USER': 'admin',
'PASSWORD': '',
},
}
try:
from .local import *
except ImportError:
pass
# local.py is empty file
我的项目是应用程序/项目/ PROD文件夹导入:
/.git
etc/
apps/
static/
myproject/
settings/
base.py
prod.py.
beta.py
wsgy.py
manage.py
如果你打开manage.py并看看里面的代码,你可以告诉它使用什么设置。您可以操纵它以在每个环境中使用正确的文件。 – Neelik
Thx fro回复。在manage.py它被写为__name__ ==“__main__”: os.environ.setdefault(“DJANGO_SETTINGS_MODULE”,“myproject.settings”) –