码迷,mamicode.com
首页 > 其他好文 > 详细

第61篇 Django 路由系统 正则表达式和二级路由 路由的命名和反向解析

时间:2018-11-05 23:40:51      阅读:436      评论:0      收藏:0      [点我收藏+]

标签:转换   import   space   命名   xxx   url路径   index   页面   col   

1. 正则表达式


1. Django路由系统匹配URL路径的时候是从上到下按照注册顺序来的

1.1Django1.11 与Django2.0区别 以及过度转换

技术分享图片

 

技术分享图片

 


2. Django的路由系统只匹配URL路径,不匹配域名、端口、URL参数

技术分享图片

 

技术分享图片

 


3. 分组匹配 --> 相当于给视图函数传位置参数

技术分享图片

 


4. 分组命令匹配 --> 相当于给视图函数传关键字参数

技术分享图片

r‘^xxxx$‘ 

r一定要写上,代表里面的字符串是原始的字符串不需要转译

技术分享图片

 


5. 注意:
分组匹配和分组命名匹配不能混合使用!!!

6.匹配不成功是否自动添加/重新匹配

技术分享图片

 

技术分享图片

 

7. 视图函数中可以指定默认值,这个设计思想很重要,

技术分享图片

 

7. 二级路由

技术分享图片

 

技术分享图片

 

技术分享图片

 


2. 给URL匹配模式起名字
1. name=‘别名‘ --> 起别名的目的是为了反向解析URL的时候有依据
3. 通过名字反向解析
1. 在视图函数中:
from django.urls import reverse
reverse(‘别名‘, )

技术分享图片

 

技术分享图片

 

技术分享图片

 


2. 在模板HTML页面
{% url ‘别名‘ ‘参数1‘ ... %}

技术分享图片

 

技术分享图片

 

3.2

技术分享图片

技术分享图片

 


4. namespace模式
# 所有以app01开头的都交给app01/urls.py去处理
url(r‘^app01/‘, include(app01_urls, namespace=‘app01‘)),

技术分享图片

 


# 所有以xiayuhao开头的都交给app02/urls.py去处理
url(r‘^app02/‘, include(app02_urls, namespace=‘app02‘)), # app02/index/

技术分享图片

技术分享图片

技术分享图片

 

第61篇 Django 路由系统 正则表达式和二级路由 路由的命名和反向解析

标签:转换   import   space   命名   xxx   url路径   index   页面   col   

原文地址:https://www.cnblogs.com/cavalier-chen/p/9912213.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!