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)

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

相关文章

浅谈Python中eval的强大与危害

eval是Python的一个内置函数,这个函数的作用是,返回传入字符串的表达式的结果。想象一下变量赋值时,将等号右边的表达式写成字符串的格式,将这个字符串作为eval的参数,eval的返...

python中实现控制小数点位数的方法

前段时间遇到一个问题,python中怎么设置小数点位数,经过查资料,在这里整理了两种较为简单的方法: 法1:利用python内置的round()函数 a = 1.1314...

python生成以及打开json、csv和txt文件的实例

生成txt文件: mesg = "hello world" with open("test.txt", "w") as f: f.write("{}".format(mesg))...

Python实现朴素贝叶斯的学习与分类过程解析

Python实现朴素贝叶斯的学习与分类过程解析

 概念简介: 朴素贝叶斯基于贝叶斯定理,它假设输入随机变量的特征值是条件独立的,故称之为“朴素”。简单介绍贝叶斯定理: 乍看起来似乎是要求一个概率,还要先得到额外三个概率,...

SVM基本概念及Python实现代码

SVM基本概念及Python实现代码

SVM(support vector machine)支持向量机: 注意:本文不准备提到数学证明的过程,一是因为有一篇非常好的文章解释的非常好:支持向量机通俗导论(理解SVM的三层境界)...