在开发项目时,要预先设定好项目结构,比如下面就是一个常用的项目结构。
一、配置目录
由于这个项目比较简单,所以不用创建那么多分类,只需要api、common、config、log和test五个目录就可以了。
在项目文件中,分别创建api、common、config、log和test五个目录。
二、将const.py文件放到config文件夹。
const.py是一个存储常量的配置文件。
#!/usr/bin/evn python # coding=utf-8 ### 设备常量参数模块,初始化各个常量 ### ################################################################################## ### 数据库参数 ### # 数据库名称 DB_NAME = 'simple_db' # 数据库链接地址 DB_HOST = '127.0.0.1' # 数据库端口 DB_PORT = 5432 # 数据库账号 DB_USER = 'postgres' # 数据库登录密码 DB_PASS = '123456' ################################################################################## ### 邮件服务参数 ### # 邮件服务器 SMTP = 'smtp.qq.com' # 邮件服务器端口 PORT = 465 # email发送账号 EMAIL_USER = 'xxxxxx@qq.com' # email邮箱授权码 EMAIL_PWD = 'xxxxxxxxxxx' # 系统异常邮件通知地址,多个地址用逗号分隔 EMAIL_LIST = 'xxxxxx@qq.com' # 异常邮件通知标题 # ——由于我们有开发环境、测试环境、预生产环境、生产环境等多个不同的环境, # ——所以在发送异常通知时如果区分的话,可能就弄不清是那个环境出了问题, # ——我们可以通过设置邮件标题为:开发、测试、预生产、生产等标签来方便区分是那个环境发送的异常通知 EMAIL_ERR_TITLE = '系统异常通知-simple-开发'
三、在文件夹下面添加__init__.py
在common、config两个目录下面添加__init__.py,代码如下:
#!/usr/bin/evn python # coding=utf-8 #遍历当前文件夹下的所有.py文件,然后用__import__导入到程序中 import os,sys pro_path = os.path.split(os.path.realpath(__file__))[0] sys.path.append(pro_path) for root,dirs,files in os.walk(pro_path): for file in files: name,ext = os.path.splitext(file) if ext == '.py' and name != '__init__' and pro_path == root: __import__(name) for dir in dirs: if dir != '.svn': try: __import__(__name__ + '.' + dir) except: pass break
在api目录下面添加__init__.py,代码如下:
#!/usr/bin/evn python # coding=utf-8 #遍历当前文件夹下的所有.py文件,然后用__import__导入到程序中 import os,sys from common import log_helper pro_path = os.path.split(os.path.realpath(__file__))[0] sys.path.append(pro_path) for root,dirs,files in os.walk(pro_path): for file in files: name,ext = os.path.splitext(file) if ext == '.py' and name != '__init__' and pro_path == root: __import__(name) for dir in dirs: if dir != '.svn': try: __import__(__name__ + '.' + dir) except Exception as e: log_helper.error('初始化导入py文件出现异常:' + str(e.args)) break