8.蓝图抽取
项目的蓝图模块可以按以下方式来分:
- 按功能模块来分,比如:用户模块、订单模块
- 按接口版本来分,某个版本的接口放一个文件夹下面
因为新经资讯项目是前后端不分离的项目,界面数据大部分都使用模板的形式进行渲染,很少涉及到通过接口的形式返回数据,所以本项目使用按功能模块来划分蓝图。
在 info 目录下创建 modules Package,创建完成如下


manage.py是程序启动的入口,只关心启动的相关参数即内容,不关系具体内容
再创建具体蓝图模块: index

然后再该路径下的init中创建蓝图,新建views.py用来写试图函数

别忘了在init里导入views

最后别忘了在app的创建里面注册蓝图


然后我们测试一下redis_store设置值,这里会遇到我们经常出现的循环导入

问题路线

解决方法,延迟导入
、
但是还有一个问题, redis_store在使用时,没有提示. (这是因为在全局变量定义时,初始化为None,他认为是None,那就不知道有什么方法),在后面会出现类型错误
解决方法:
注释声明变量的类型. 这样解释器就知道他是什么类型的对象,那就可以代码提示了:

OK 蓝图初建模块先就这样啦

浙公网安备 33010602011771号