Python 中urls.py:URL dispatcher(路由配置文件)详解

时间:2022-01-18 06:00:20

urls.py:URL dispatcher(路由配置文件)

URL配置(URLconf)就像是Django所支撑网站的目录。它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表。以这样的方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。url的加载就是从配置文件中开始。

urlpatterns的两种形式

没有前缀的情况,使用的列表(推荐方式)

Python 中urls.py:URL dispatcher(路由配置文件)详解

URL模式

?
1
2
3
urlpatterns = [
  url(正则表达式, view函数, 参数, 别名, 前缀),
]

参数说明:

  1. 正则表达式:正则表达式
  2. view函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串
  3. 参数:可选的要传递给视图函数的默认参数(字典形式)
  4. 别名:一个可选的name参数
  5. 前缀:路径前缀

URL分解器

通常一个URL分解器对应一个URL配置模块,它可以包含多个URL模式,也可以包含多个其他URL分解器。通过这种包含结构设计,实现Django对UR的层级解析。
URL分解器是Django实现app与项目解耦的关键。通常由include方法操作的URL配置模块,最终会被节食成为URL分解器。

URL常见写法示例 regex

?
1
2
3
url(r'test/\d{2}/$', views.test) # test/66
url(r'test/(?P<id>\d{2})/$', views.test)
url(r'test2/(?P<id>\d{2})/(?P<key>\w+) /$', views.test)

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://www.jianshu.com/p/cfcded1e8da2