10、Django开发||生产环境
由于开发过程中使用git来进行版本管理,而本地开发环境的设置和生产环境的设置难免会不一样。若是单纯的settings.py文件则会导致两个环境的设置冲突,相互覆盖再手动修改未免太过于麻烦,而且容易出错。
这里笔者选择拆分 settings.py 文件来实现不同环境设置的管理
首先新建config文件夹
其次将settings.py拆分为三个文件:
setting_base.py #通用设置文件,insert_app等通用设置都放在这个文件内
setting_dev.py #开发环境设置文件,数据库,debug已经allow_host等开发环境设置都在这个文件中
setting_pro.py #生产环境设置文件,数据库,debug已经allow_host等生产环境设置都在这个文件中
之后我们需要在 setting_base.py 文件中导入开发环境设置已经生产环境设置,为了让不同的环境能够灵活的导入对应的设置,我们需要引入环境变量这个东西,好让电脑识别这到底是生产环境还是开发环境。
通过查询电脑是否有PRODUCTION_SETTINGS
环境变量来识别开发环境还是生产环境,我们只需要在服务器中/etc/profile
文件中写入该环境变量即可导入正确的设置文件
最后我们需要让django框架识别设置文件到底在哪
修改manage.py文件,将原来的
项目名.settings
值更改为config.setting_base
修改 uwsgi.py 文件,和manage.py一样
修改pycharm项目configurations中的
DJANGO_SETTINGS_MODULE
值为config.setting_base
(可选,使用pycharm需修改,让其能够在ide中运行)修改.idea中的*.ini文件里的settingsModule值为
config/setting_base.py
(可选,这个设置是为了让pycharm的Python Console正常运行)
至此,所有修改都已完成,可以启动项目进行新的开发了
Last updated