目标
理解以下内容:
- 转换器的关系字典
- 注册自定义的转换器
- 转换器的捕捉验证返回流程
- 域名反解时转换器的处理流程
需求
实现捕捉分类的功能
路由,重点在正则
视图
捕捉效果
了解转换器的原理
转换器的核心就是正则表害式
一,路径中捉到的内容会交给转换器
如果没有写转换器
默认用的是str转换器
二,转换器类的处理
1,先验证一下捕捉的内容是不是可以匹配成功
如果不成功,就会报错
2,被捕捉的内容,会经过to_python方法处理
然后返回给视图函数的形参
3,如果是通过reverse进行反转
例如
reverse(别名, kwargs={key,val})
这个val会被别名所对应的路径中的转换器得到
然后会被 to_url 得到这个参数
to_url方法处理后的结果,会回填到路径里
看图理解转换器流程
图一,路径捕捉参数,传递给视图中
图二,别名反转
转换器模块中有内容
DEFAULT_CONVERTERS
转换器关系字典
这是一个字典
键,转换器拘字
值,转换器的处理类对象
register_converter
注册新转换器
如果自定义了转换器
可以通过这个方法把新转换器添加进去
自定义转换器开始
目标
步骤:
一,写一个转换器的类
二,注册这个转换器
三,使用这个转换器
四,看效果
路径上写了科目
通过转换器来捉
并且返回为字典的形态(to_python方法的处理结果)