最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python的Django框架中settings文件的部署建議

 更新時間:2015年05月30日 17:11:10   投稿:goldensun  
這篇文章主要介紹了Python的Django框架中settings文件的部署建議,包括對local_settings的弊病的一些簡單分析,需要的朋友可以參考下

django在一個項目的目錄結構劃分方面缺乏必要的規(guī)范,因此不同人的項目組織形式也千奇百怪,而且也很難說誰的做法就比較好。我根據自己的項目組織習慣,發(fā)布了一個項目dj-scaffold。

前些天在reddit上為我的項目dj-scaffold打了個“廣告”(見:http://redd.it/kw5d4)。不想評價甚糟,甚至差點被打成負分。其中更也人將這個項目說的一文不值。面對負面聲音雖然會有些不爽,但其中的建設性意見還是需要聽取的,至于那些純屬個人偏好部分就自動過濾了。

在談及settings文件如何組織時,coderanger建議參考The Best (and Worst) of Django中的做法。文中的主要觀點是開發(fā)環(huán)境和生產環(huán)境的配置都需要放到VCS中進行版本控制。參考文中的做法,我對settings模塊做了部分調整。注:代碼 https://github.com/vicalloy/dj-scaffold/tree/master/dj_scaffold/conf/prj/sites/settings
local_settings的弊病

為將項目的默認配置和本地配置區(qū)分開,最常用的做法是增加一個local_settings.py文件,并在settings文件的最后對該文件進行import。

try:
 from local_settings import *
except:
 pass
 

由此引發(fā)的問題是你不能對local_settings.py進行版本控制,部署環(huán)境的配置萬一丟失將難以找回。
解決方案

針對該問題,建議的解決方案如下
合理的配置文件組織方式

復制代碼 代碼如下:
|~settings/
| |-__init__.py
| |-base.py   #默認配置信息
| |-dev.py    #開發(fā)環(huán)境的配置
| |-local.sample    #本地的擴展配置在dev和production的最后進行import
| |-pre.sample    #設置當前使用的配置為生產環(huán)境還是開發(fā)環(huán)境
| `-production.py    #生產環(huán)境的配置
 

使用方式

<strong>DJANGO_SETTINGS_MODULE</strong>
 

django的admin腳本提供了settings參數用于指定當前使用的配置文件

django-admin.py shell --settings=settings.dev
 

在wsgi腳本中則可直接設置需要使用的settings

deploy.wsgi
os.environ['DJANGO_SETTINGS_MODULE'] = settings.production
 

簡化參數

當然,如果每次使用django-admin.py的時候都要帶上settings參數還是非常惱人,所以推薦的做法是在pre.py中配置自己所需要使用的配置文件。

SETTINGS = 'production' #dev
 

相關文章

最新評論

上高县| 呼图壁县| 芦山县| 滁州市| 长葛市| 津市市| 金门县| 阿拉善左旗| 兰坪| 凭祥市| 卢湾区| 邢台县| 乐山市| 乌审旗| 汶川县| 望都县| 土默特左旗| 咸宁市| 台山市| 宜川县| 南京市| 常州市| 颍上县| 扶沟县| 龙门县| 韶关市| 恩平市| 临朐县| 石泉县| 甘泉县| 甘谷县| 黄山市| 南通市| 科尔| 清水河县| 长丰县| 如东县| 清河县| 兴业县| 垣曲县| 拉孜县|