目录
前言
最近在写项目时,认真阅读了底层代码的框架结构,有很多好的设计思想,所以记录下来,希望今后能够为自己所用。
这个专题不记录大的架构设计思想,而是专门调一些小的模块设计,以及python中比较好用的、可以用于架构设计的标准库来记录。所以这个专题的记录也就较琐碎。当然我会整理一个目录,方便以后查阅。
1、如何合理的配置config包
项目开发中我们会区分dev环境与production环境,在配置文件中我们一般会配置两种环境的参数。通过传参的方式觉得此次启动服务使用的哪个环境。
当然dev环境与prod环境有一些参数是一样的,这时候就可以将共同的参数抽取出来组成一个base,dev和prod均导入这个base就可以使用了。
1.1 fask中config包的配置结构
以我做的一个微电影网站的项目为例,说明一下flask小型项目中常用的配置。
以下为总的项目代码结构
上面划红线的三个文件,分别对应后面列出代码的文件
setting.py和secure.py为配置文件。
setting里存放不敏感信息,secure.py存放较为隐私的配置信息(如数据库账号密码等)
在flask中,我们只需在创建app时,将配置文件注入,以后即可使用了。详细见如下:
settings.py文件如下
import os
class BaseConfig(object):
UP_DIR = os.path.join(os.path.abspath(os