1
我的项目有base.py
,dev.py
和production.py
(非常自我解释)。修改用于开发和生产的manage.py
在我的电脑上,我只保留dev.py
和base.py
,而在服务器上我只保留production.py
和base.py
。
虽然WSGI不是问题,但我发现每次部署后都必须进入manage.py
以更改os.environ.setdefault()
设置。
我想改变这一点:
from __future__ import absolute_import, unicode_literals
import os
import sys
if __name__ == "__main__":
try:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.dev") #or project.settings.production
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
这样:
from __future__ import absolute_import, unicode_literals
import os
import sys
if __name__ == "__main__":
try:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.dev")
except:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.production")
from django.core.management import execute_from_command_line
execute_from_command_line(sys.argv)
然而,这仍然引发了一个ImportError
。任何想法为什么?或者你知道更好的方法吗?