python 多个配置文件_django中如何如何针对不同的环境使用多个配置文件?
這個問題兩年了,都沒人回答啊。。我來答吧。
1、上面這個config.py文件放在和manange.py同級的目錄下
2、修改manage.py來引入這個配置文件里面的類
3、修改下手動加載的參數,因為django的調試模式,導致會被運行兩遍,這樣程序以為參數多了,會報錯。
下面是代碼
#config.py
import os
class Config(object):
"""Base config class."""
HOST='0.0.0.0'
PORT='8000'
pass
class ProdConfig(Config):
"""Production config class."""
pass
class DevConfig(Config):
"""Development config class."""
# Open the DEBUG
DEBUG = True
manage.py里面需要增加兩行,就保持3個參數,多被增加的參數直接pop掉就好了。
原因是:在開發模式下,通過python manage.py runserver的方式啟動django的時候,會啟動兩個線程去加載settings文件,一個是用來給你服務的,另一個是監控settings文件是否改變的,如果改變就立即讓他生效,所以會導致上面的錯誤
#manage.py
import config
config_dev=config.DevConfig()
str_tmp=config_dev.HOST+':'+config_dev.PORT
sys.argv.append(str_tmp)
if len(sys.argv)>3:
sys.argv.pop()
當然這樣子弄了半天,其實也就是節省了運行程序從
python manage.py runserver 0.0.0.0:8000
python manage.py runserver
數據庫相關配置,估計還是需要寫在settings.py里面吧,暫時不知道有什么辦法,把數據庫也弄出來,那樣更負責了,等待有人來簡化;)
總結
以上是生活随笔為你收集整理的python 多个配置文件_django中如何如何针对不同的环境使用多个配置文件?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 埋点是什么意思_掌握数据生命周期:初识数
- 下一篇: python打包exe os模块_pyt