即使不同的APP使用相同的URL名称,URL的命名空间模式也可以让你唯一反转命名的URL。 例如:

project中的urls.py

from django.conf.urls import url, include
urlpatterns = [
url(r"^app01/", include("app01.urls", namespace="app01")),
url(r"^app02/", include("app02.urls", namespace="app02"))
]

app01中的urls.py

from django.conf.urls import url
from app01 import views app_name = "app01"
urlpatterns = [
url(r"^(?P<pk>\d+)/$", views.detail, name="detail1")
]

app02中的urls.py

from django.conf.urls import url
from app02 import views app_name = "app02"
urlpatterns = [
url(r"^(P<pk>\d+)/$", views.detail, name="detail1")
]

现在,这两个app中的url名称是重复的,但是反转URL的时候就可以通过命名空间的名称得到当前的URL。

语法:

命名空间名称: URL名称

模板中使用:

{% url "app01:detail" pk=12 pp=99 %}

views中的函数中使用:

v = reverse("app01:detail", kwargs={"pk":11})

这样,即便app中URL的命名相同,也可以反转的得到正确的URL。

 

最新文章

  1. 《如何在大学里脱颖而出(How to Win at College)》读书笔记
  2. iOS黑客技术相关
  3. LeetCode&mdash;&mdash;Rotate Image(二维数组顺时针旋转90度)
  4. 打造高质量Android应用:Android开发必知的50个诀窍
  5. MYSQL--事务处理
  6. 一天一个Java基础——序列化
  7. 【strtok()】——分割字符串
  8. MAC 上传文件到github
  9. openstack安装系列问题:window7 64位安装的virtualBox 只能选择32位的系统安装不能选择64位的系统安装
  10. 项目(七)SVN版本管理与大型代码上线方案
  11. Confluence 6 从生产环境中恢复一个测试实例
  12. dajpper使用教程
  13. Android学习之基础知识十六 — Android开发高级技巧的掌握
  14. CSS三:CSS的三种引入方式
  15. matlab中如何将视频保存成图像
  16. SVN Attempted to lock an already-locked dir异常解决方法
  17. ios instancetype 和 id 的异同
  18. PAT 1042 字符统计(20)(思路)
  19. centos中添加php扩展pdo_mysql步骤
  20. Swift的函数与函数指针、闭包Closure等相关内容介绍

热门文章

  1. Linux下一种高效多定时器实现
  2. ReLU、LReLU、PReLU、CReLU、ELU、SELU
  3. 选项卡TAB
  4. MQTT图形化客户端比较
  5. sql server 数据库中明明有值但是查询怎么都查不到值
  6. Nginx用法详解
  7. **表示python中的意思
  8. struts 漏洞
  9. github 提交和更新代码
  10. vue+element-ui upload图片上传前大小超过4m,自动压缩到指定大小,长宽