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

yipeiwu_com6年前Python基础

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

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

urlpatterns的两种形式

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


URL模式

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

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)

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

相关文章

django之状态保持-使用redis存储session的例子

关于redis安装,pip install django-redis-sessions,按照提示进行安装相关的服务端 和客户端. django版本1.8.2, Python版本2.7.1...

用Python制作简单的朴素基数估计器的教程

假设你有一个很大的数据集,非常非常大,以至于不能全部存入内存。这个数据集中有重复的数据,你想找出有多少重复的数据,但数据并没有排序,由于数据量太大所以排序是不切实际的。你如何来估计数据集...

MySQL最常见的操作语句小结

以下是我这几天一直在用的几个命令,先记下来,以后会整理一份mysql详细的使用文档 注:[]中代表名字,需要用库名或者表名替换 显示所有的库: show databases;...

python文件绝对路径写法介绍(windows)

python在描述路径时有两种方式: 'd:\\a.txt',转义的方式 r'd:\a.txt',声明字符串不需要转义 (使用raw string,也就是在string'前面加r,告诉p...

Python解决走迷宫问题算法示例

本文实例讲述了Python解决走迷宫问题算法。分享给大家供大家参考,具体如下: 问题: 输入n * m 的二维数组 表示一个迷宫 数字0表示障碍 1表示能通行 移动到相邻单元格用1步 思...