多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
>[success] # 项目结构布局 根据使用频率以及需要依赖的文件合理的规划项目文件结构,提高开发效率 >[success] # 通用解释模块的创建 ~~~ ├── CHANGELOG.md ----列出每次版本功能点 ├── LICENSE ----配置的许可证 ├── README.md ----这项目的说明文件 ├── requirements.txt ----项目依赖包 ~~~ >[success] # 生产/开发/测试 环境的建立 当我们相对,域名,数据库,或者是app模块进行单独的切换匹配的时候,我么可以创建一个`settings`文件,创建后对这个文件进行目录划分 注意直接用了`from .base import *` 引入了所有内容,这里的base 文件内容都是原来的settings文件内容,通过引入覆盖的方法切换环境,要在settings 文件中加`__init__.py` ~~~ settings ----- base 基础文件信息对应的之前settings.py中所有内容 ----- product 生产线上环境 ----- develop 开发环境 ----- test 测试环境 ~~~ ![](https://box.kancloud.cn/1f4a6889878b54cb46c2c44f2afedd00_326x232.png) >[danger] product.py 配置 ~~~ from .base import * DEBUG = False # 实际域名 ALLOWED_HOSTS = ['*'] DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } ~~~ >[danger] develop.py 配置 ~~~ from .base import * DEBUG = True ALLOWED_HOSTS = ['*'] INSTALLED_APPS += [ # 'debug_toolbar', ] DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } ~~~ >[danger] test.py 配置 ~~~ from .base import * DEBUG = True ALLOWED_HOSTS = ['*'] DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } ~~~ >[success] # 以上完事对manage.py 文件配置 ![](https://box.kancloud.cn/d49b9e1d982f091737d80f65f37d33b6_824x293.png) 这里的 'os.environ.get' 只对linux 操作系统切换时有实质性帮助,其中。第一个参数k 随便起的名字,后面是对应的环境名字,这样可以和下面的进行拼接 ~~~ LINUX 切换 环境指令 export TBASE_PROFILE=produuct ~~~ ~~~ profile = os.environ.get('TBASE_PROFILE', 'develop') os.environ.setdefault("DJANGO_SETTINGS_MODULE", "tbase.settings.%s"%profile) ~~~