文章目录
第一节:路由参数与返向解析
什么是视图
视图层 = 路由表(urls.py)+视图函数(views.py)
其角色相当于MVC中的Controller;
其职能是协调models和Template的关系,并解除其耦合;
过程:
1、路由表接收用户请求,并分配给相应的视图函数进行处理
2、视图函数调用模型获取数据
3、视图函数将数据交给模板渲染
4、视图函数将渲染结果返回给客户端
定义路由
定义路由表响应函数
# 将指定路由交由指定函数进行处理,路由名字为pond,(\d+)指的是参数
#路由多个参数,路由函数相对应也有多个参数
# 当前函数被命名为'npond'(用于后续反向解析)
url(r'^pond/(\d+)/', views.pond_user, name='npond')
分发路由
将特定路由派发给子路由表
例:
# 将所有/app/xxx派发给App下的urls.py处理
# namespace='mapp',表示该子路由表被命名为'mapp'(用于后续反向解析)
url(r'^app/', include('App.urls', namespace='app'))
将特定路由派发给子路由表
【反向解析】= 得到【指定路由表名】中的【指定函数名】对应的【url路由】
定义路由参数
参数的规则
1、 在url匹配规则中使用括号
2、url规则中有多少括号,响应函数的request参数后就要有多少参数
3、 一一对应,按位置对应(位置参数)
4、 写法(\正则)
1、定义普通参数
例:
- 定义路由
- 定义路由函数
2、定义关键字参数
例:
- 定义路由