分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

8.url路由

发布时间:2023-09-06 01:51责任编辑:彭小芳关键词:url

1、单一路由对应

url(r‘^index/$‘, views.index),

这里要注意的是,/$ 表示只有只/结尾的才有效,如果把$符号去掉的话,只要是以index/开头都会匹配到这个url。

   

2、基于正则的路由

   

url(r‘^index/(\d*)‘, views.index),

url(r‘^manage/(?P<name>\w*)/(?P<id>\d*)‘, views.manage),

   

3、添加额外的参数

   

url(r‘^manage/(?P<name>\w*)‘, views.manage,{‘id‘:333}),

   

4、为路由映射设置名称

   

url(r‘^home‘, views.home, name=‘h1‘),

url(r‘^index/(\d*)‘, views.index, name=‘h2‘),

设置名称之后,可以在不同的地方调用,如:

   

模板中使用生成URL {% url ‘h2‘ 2012 %}

函数中使用生成URL reverse(‘h2‘, args=(2012,)) 路径:django.urls.reverse,必须用django提供的reverse方法。

   

5、根据app对路由规则进行分类

   

在主url.py中进行设置

url(r‘^org/‘, include(‘organization.urls‘,namespace=‘org‘)),

   

organization.urls表示文件名,也就是说只要是org这个域里的url我都到organization.urls这个文件去找。比如 www.127.0.0.1:8000/org/list/ 等

   

6、命名空间

   

a. project.urls.py

   

from django.conf.urls import url,include

urlpatterns = [

url(r‘^a/‘, include(‘app01.urls‘, namespace=‘author-polls‘)),

url(r‘^b/‘, include(‘app01.urls‘, namespace=‘publisher-polls‘)),

]

   

   

   

以上定义带命名空间的url之后,使用name生成URL时候,应该如下:

v = reverse(‘author-polls:detail‘, kwargs={‘pk‘:11})

{% url ‘author-polls:detail‘ pk=12 pp=99 %}

   

8.url路由

原文地址:https://www.cnblogs.com/liuqianli/p/8975562.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved