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

yipeiwu_com5年前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 Django 页面上展示固定的页码数实现代码

Python Django 页面上展示固定的页码数实现代码

如果页数太多的话,全部显示在页面上就会显得很冗杂 可以在页面中显示规定的页码数 例如: book_list.html: <!DOCTYPE html> <htm...

python删除列表内容

今天有点囧 a=['XXXX_game.sql', 'XXXX_game_sp.sql', 'XXXX_gamelog_sp.sql', 'XXXX_gamelog.sql'] fo...

Python机器学习之SVM支持向量机

Python机器学习之SVM支持向量机

SVM支持向量机是建立于统计学习理论上的一种分类算法,适合与处理具备高维特征的数据集。 SVM算法的数学原理相对比较复杂,好在由于SVM算法的研究与应用如此火爆,CSDN博客里也有大量的...

tensor和numpy的互相转换的实现示例

要对tensor进行操作,需要先启动一个Session,否则,我们无法对一个tensor比如一个tensor常量重新赋值或是做一些判断操作,所以如果将它转化为numpy数组就好处理了。下...

python实现目录树生成示例

复制代码 代码如下:#!/usr/bin/env python# -*- coding: utf-8 -*-import osimport optparse LOCATION_NONE&...