一、装饰器路由的实现
1.map类存储了所有的Rule类的规则,Rule类存储具体的url和试图的映射,MapAdapter负责把url和视图进行匹配
二、上下文
1.请求上下文
(1)request: 封装了客户端请求的信息
(2)session: 封装了请求过程中的用户信息
2.应用上下文
(1)current_app:保存了程序运行最基本的环境配置信息,包括程序实例名、使用的全局变量、数据库的操作等,生命周期最长,代码在运行,一直存在;用来记录项目日志
(2)g: 临时存储信息,项目中用来临时存储用户信息
3.区别
1.应用上下文针对的程序本身,请求上下文对的客户端和服务器的请求信息;
2.应用上下文生命周期比请求上下文生命周期更长,requret、session、g在请求结束后都会被销毁
三、扩展包
1.flask_script:导入管理器,实例化管理器对象,代替app运行run方法,启动服务器;作用:在终端可以通过命令的形式运行项目
四、模板
1.模板的本质是包含响应数据的文件,作用是接收视图返回的结果,渲染数据
2.基本语句:变量{{ 变量名}}
3.语句:{% if 表达式 %}内容{%endif%}
4.循环语句: loop.index从索引1开始,loop.index0从索引0开始
5.Wtf扩展包:作用是避免手写表单,实现数据的验证,必须要设置密钥,表单数据验证的过程,调用表单字段中定义的验证函数,其次验证模板表单域中是否设置csrf_token