Django实践之配置文件

原创 2017年08月11日 16:43:00

一个django项目通常有几个环境,开发环境,测试环境,单元测试环境,以及生产环境,这里每一种环境的settings配置都有一些区别。默认的settings是一个py文件,这里采用一个模块来组织。

目标
- 每个环境不冲突
- git中不冲突

配置管理

Django启动时候指定settings一般有2中形式

  1. 采用 DJANGO_SETTINGS_MODULE 环境变量,例如 export DJANGO_SETTINGS_MODULE=elf.settings.pro, 线上使用这种方式

  2. 使用命令参数的方式 python manage.py runserver --settings=elf.settings.dev 当然这个只是在开发环境中

可以把上面的环境变量或者参数设置写成shell脚本,省的总是忘记

文件组织结构

├── settings
│   ├── __init__.py
│   ├── base.py
│   ├── dev.py
│   ├── dev.py.example
│   ├── pro.py
│   ├── test.py

说明:

  • base.py 是通用配置,所有环境都相同的可以配置在这里
  • pro.py 是生产环境,如果有些内容无法放到版本控制中,还需要结合配置系统等
  • dev.py.example 说下这个文件,它是dev.py的模版,dev.py是不用上传的git的,每个人的开发环境保持的一份就好。开发的时候从git clone 下来dev.py.example,然后修改成自己的 dev.py 使用。
  • test.py 单元测试配置,例如数据库,还有一些加速测试的配置等
  • 其他环境,可以自己定义

配置导入

如果自己定义了一些全局配置在settings中,导入的时候使用

from django.conf import settings

settings.MY_SETTING_ITEM

这样可以通过 lazy 方式 load 配置项目。

版权声明:本文为orangleliu (http://blog.csdn.net/orangleliu/)原创文章,自由传播,文章转载请声明, 多谢。

python+django实践

玩了好久python了,现在才做出一个网站来,说起来很惭愧啊,之前一直以为python做科学计算比较强大(主要是不喜欢MATLAB),后来才发现原来python也可以做后端。好了,不水了,说下实现过程...
  • MarxWolf
  • MarxWolf
  • 2016年05月05日 18:26
  • 680

自学《Python编程:从入门到实践》 项目3 第18章Django入门 遇到的问题

零基础开始学的python,跟着《Python编程:从入门到实践》现在在学,把我发现的问题贴出来吧,顺便给其他小白提供一些帮助。 因为零基础,所以一直跟着课本来敲代码,发现进入这个章节发现很多问题,...
  • sinat_32370335
  • sinat_32370335
  • 2018年01月27日 21:10
  • 41

django settings.py 配置文件

#coding=utf-8 import os DEBUG = True TEMPLATE_DEBUG = DEBUG APP_PATH = os.path.split(__file__)[0] R...
  • linjinniang
  • linjinniang
  • 2014年07月16日 10:16
  • 3278

各种 django 静态文件的配置总结【待续】

 最近在学习django框架的使用,想引用静态css文件,怎么都引用不到,从网搜了好多,大多因为版本问题, 和我现在的使用的dango1.1配置不同,根据资料和公司的项目最终解决,于是想整理总...
  • huangyimo
  • huangyimo
  • 2016年01月24日 18:42
  • 1200

Python Web入门:Django学习与实践一

本次主要是对自己学习的内容进行复习加深理解,涉及的知识是Django的安装和简单的页面创建...
  • u012991166
  • u012991166
  • 2017年08月22日 09:35
  • 259

django数据库本地配置/python读取本地配置文件

首先创建一个本地文件config.ini,是.ini格式的配置文件,值不用加引号,读取过去就是字符串格式 文件内容: [global] ip = xxx port = xxx table = xxx ...
  • songbaiyiran
  • songbaiyiran
  • 2017年10月14日 12:04
  • 457

基于How To Tango With Django 1.9的重新实践(7)——Forms

到目前为止我们仅仅是通过视图和模板来表现数据.在本章,我们将会学习如何通过web表单来获取数据.Django包含一些表单处理功能,它使在web上收集用户信息变得简单.通过Django’s docume...
  • HeatDeath
  • HeatDeath
  • 2017年03月15日 10:18
  • 652

经验分享 |【PDF下载】运维/DevOps峰会之企业上云安全加固最佳实践

阿里云安全专家,目前主要负责阿里云云平台安全,先后参与过聚石塔安全、专有云安全、以及阿里集团内部应用上云的安全建设工作。...
  • CS13522431352
  • CS13522431352
  • 2017年08月23日 14:25
  • 126

[Django入门知识浅介]用Django实现动态URL

注:以下内容转载自 现代魔法学院 网站的 用Django实现动态URL 一文,仅供学习使用。         前一小节学习了如何用 Django 做动态页面,就是用 Python 显示实时时间。但是是...
  • dapeng0802
  • dapeng0802
  • 2015年10月10日 22:07
  • 231

django setting 配置文件

# Django settings for mysite project.   DEBUG = True TEMPLATE_DEBUG = DEBUG   ADMINS = (     #...
  • zj19880814
  • zj19880814
  • 2013年10月12日 14:17
  • 1151
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Django实践之配置文件
举报原因:
原因补充:

(最多只允许输入30个字)