1.能够创建Py2和Py3版本的虚拟环境
-
查看虚拟环境版本:
virtualenv --version -
创建虚拟环境:
mkvirtualenv -p python3 虚拟环境名称(指定python3.x)
mkvirtualenv -p python3 py3_flask
mkvirtualenv py3_flask
-
查看虚拟环境:
workon -
使用虚拟环境:
workon 虚拟环境名称
2.能够写出Flask从对象中加载配置的代码
1 | class Config(object): |
3.能够说出url_for的作用
通常和redirect一起使用,用以传递参数。url_for反解析:通过视图函数的名称返回地址,格式:url_for('视图函数名称',key=value)
1 |
|
4.能够写出带有参数的路由及视图函数
1 |
|
5.能够说出自定义转换器的步骤
在 web 开发中,可能会出现限制用户访问规则的场景,那么这个时候就需要过滤指定用户, 所以可以使用转换器实现
转换器的本质:通过正则表达式,匹配路由地址
系统自带转换器:
1 | DEFAULT_CONVERTERS = { |
自定义转换器,具体实现步骤为:
- 导入转换器基类(BaseConverter):Flask中所有的路由的匹配规则,都是使用转换器实现
- 自定义转换器:自定义类继承于转换器基类
- 添加转换器到默认的转换器字典中
- 使用自定义转换器实现自定义匹配规则
1 | # 自定义转换器 |
6.能够说出装饰器路由实现的几个关键的类
7.能够说出实现 HTTP 状态保持的原理
7.1 http是一种无状态协议,浏览器请求服务器是无状态的。
- 无状态:指一次用户请求时,浏览器、服务器不知道之前这个用户做过什么,每次请求都是一次新的请求。
- 无状态原因:浏览器与服务器是使用 socket 套接字进行通信的,服务器将请求结果返回给浏览器之后,会关闭当前的 socket 连接,而且服务器也会在处理页面完毕之后销毁页面对象。
有时需要保持下来用户浏览的状态,比如用户是否登录过,浏览过哪些商品等
7.2 实现状态保持主要有两种方式:
- 在客户端存储信息使用
Cookie - 在服务器端存储信息使用
Session
8.能够说出Flask各个上下文对象
9.能够说出Flask-Script扩展的作用