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

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/

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

时间: 2024-10-12 19:10:50

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

django系列3.1--url的命名和反向解析

命名URL和反向解析 在网页中某些要提交的地址等,需要改变的时候,此时网页过多,如果一个一个的去改,工作量巨大,这时就可以用到命名url,在html文件的模版中,只写命名,这样当需要我们改变urls.py中的url映射的网页地址时,就方便多了 1.普通的URL urls.py from django.conf.urls import url from app01 import views urlpatterns = [ url(r'^blog/', views.blog, name='xxx')

Django之url上的include,URL命名和反向解析,命名空间 以及图书管理系统删除功能二合一方法

include其他的URLconfs #At any point, your urlpatterns can "include" other URLconf modules. This #essentially "roots" a set of URLs below other ones. #For example, here's an excerpt of the URLconf for the Django website itself. #It include

人生苦短,我用python-- Day19 django框架之URL路由系统、视图应用、模板应用、django之orm应用

目录 一.django的URL应用 二.django的视图应用 三.django的模板应用 四.django的orm应用 补充: 补充一:getlis 应用场景:当前端发送的数据为多个的时候,后台如果还用get获取数据,那么就会出问题,所以这里有一个getlist方法进行数据的获取. 试验案例:当前端有一个多选的checkbox的时候,那么就要使用getlist进行获取数据了 urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^get

四十七、django路由匹配,分组,反向解析,路由分发,视图层

路由匹配: urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^text', views.text), url(r'^testadd', views.testadd), ] 第一个参数是一个正则表达式,也就意味着在路由的匹配的时候,是按照正则匹配的规则去匹配, 路由匹配的顺序是从上往下依次匹配,所有如上两个路由test前面一样,第三个路由一直会匹配不上 正确写法: urlpatterns = [ url(r'^admin/', adm

深入理解 react-router 路由系统

范洪春 在 web 应用开发中,路由系统是不可或缺的一部分. 在浏览器当前的 URL 发生变化时,路由系统会做出一些响应,用来保证用户界面与 URL 的同步. 随着单页应用时代的到来,为之服务的前端路由系统也相继出现了. 有一些独立的第三方路由系统,比如 director,代码库也比较轻量. 当然,主流的前端框架也都有自己的路由,比如 Backbone.Ember.Angular.React 等等. 那 react-router 相对于其他路由系统又针对 React 做了哪些优化呢? 它是如何利

django路由层(二) 反向解析和名称空间

url命名和反向解析 根据名字动态获取到对应的路径 可以给每一个路由与视图函数对应关系起一个名字 这个名字能够唯一标识出对应的路径 注意这个名字不能重复是唯一的 应用场景 通过别名来传递路径给到前端或者后端,好处是更加灵活,因为是通过别名进行传递,所以只要修改源路径,其他的层都不需要更改,否则如果直接通过源路径传递,则耦合度较高,不够灵活,维护成本太高 无分组反向解析 第一步: 命名 url(r'^pre/', views.press_list, name='press_list') 第二步:

一、数据库表中字段的增删改查,二、路由基础.三、有名无名分组.四、多app共存的路由分配.五、多app共存时模板冲突问题.六、创建app流程.七、路由分发.八、路由别名,九、名称空间.十、反向解析.十一、2.x新特性.十二、自定义转换器

一.数据库表中字段的增删改查 ''' 直接在modules中对字段进行增删改查 然后在tools下点击Run manage.py Task执行makemigrations和migrate 注意在执行字段的删除过程中需不需要对数据进行备份 ''' 二.路由基础 ''' # url中含有四个参数 # url(regex, view, kwargs=None, name=None) # 正则路径 视图函数地址 默认关键字参数(了解) 路由别名 # r'index' 只要请求中含有index都可以匹配成

Django学习系列之路由系统

一.基于App的路由 作用: 根据App对路由规则进行分类,在全局urls.py包含某个项目的urls.py 示例 定义全局urls.py(全局路由系统) #导入include from django.conf.urls import url,include from django.contrib import admin #导入app下的view函数 from learn import views urlpatterns = [ url(r'^admin/', admin.site.urls)

Django的View(视图)和路由系统

Django的View(视图) 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. 无论视图本身包含什么逻辑,都要返回响应.代码写在哪里也无所谓,只要它在你当前项目目录下面.除此之外没有更多的要求了--可以说"没有什么神奇的地方".为了将代码放在某处,大家约定成俗将视图放置在项目(project)或应用程序(app)目录中的名为views.