Python Django 命名空间模式的实现


Posted in Python onAugust 09, 2019

新建一个项目 app02

Python Django 命名空间模式的实现

在 app02/ 下创建 urls.py:

from django.conf.urls import url
from app02 import views
urlpatterns = [
  url(r'^blog/', views.test, name="blog"),
]

app01/urls.py:

from django.conf.urls import url
from app01 import views
urlpatterns = [
  url(r'^blog/', views.blog, name="blog"),
]

这两个都有 blog/ 路径,且都名为 blog,访问的话就不知道该访问哪一个

这时候需要用到命名空间

在 templates 目录下创建 /books/blog.html 和 /news/blog.html

Python Django 命名空间模式的实现

app01/views.py:

from django.shortcuts import render
def test(request):
  return render(request, "test.html") 
 def blog(request):
  return render(request, "news/blog.html") # news 前不要加 /

app02/views.py:

from django.shortcuts import render 
def test(request):
  return render(request, "books/blog.html") # books 前不要加 /

mysite2/urls.py:

from django.conf.urls import url, include
from app01 import views
from app01 import urls as app01_urls
from app02 import urls as app02_urls
urlpatterns = [
  url(r'^test/', views.test),
  url(r'^blog/', include(app01_urls, namespace="news")),
  url(r'^blog/', include(app02_urls, namespace="books")),
]

test.html:

<a href="{% url 'books:blog' %}" rel="external nofollow" >书籍</a>
<a href="{% url 'news:blog' %}" rel="external nofollow" >新闻</a>

这里用的是 namespace_name 格式来获取 url 路径

访问:http://127.0.0.1:8000/test/

Python Django 命名空间模式的实现

点击“新闻”

Python Django 命名空间模式的实现

跳到了:http://127.0.0.1:8000/blog/blog/,返回的是 /news/blog.html 页面

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 创建弹出式菜单的实现代码
Jul 11 Python
Python如何通过subprocess调用adb命令详解
Aug 27 Python
Python自定义函数定义,参数,调用代码解析
Dec 27 Python
对numpy中shape的深入理解
Jun 15 Python
python实现DEM数据的阴影生成的方法
Jul 23 Python
python迭代器常见用法实例分析
Nov 22 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
Mar 10 Python
pycharm 实现本地写代码,服务器运行的操作
Jun 08 Python
使用Python操作MySQL的小技巧
Sep 10 Python
python爬虫请求头的使用
Dec 01 Python
Python opencv缺陷检测的实现及问题解决
Apr 24 Python
Python 避免字典和元组的多重嵌套问题
Jul 15 Python
Mac安装python3的方法步骤
Aug 09 #Python
对python 树状嵌套结构的实现思路详解
Aug 09 #Python
Python  Django 母版和继承解析
Aug 09 #Python
python实现爬虫抓取小说功能示例【抓取金庸小说】
Aug 09 #Python
python实现BP神经网络回归预测模型
Aug 09 #Python
Django ORM 聚合查询和分组查询实现详解
Aug 09 #Python
解决Django后台ManyToManyField显示成Object的问题
Aug 09 #Python
You might like
php设计模式 Mediator (中介者模式)
2011/06/26 PHP
利用PHP如何实现Socket服务器
2015/09/23 PHP
简单谈谈PHP中的Reload操作
2016/12/12 PHP
EXTJS记事本 当CompositeField遇上RowEditor
2011/07/31 Javascript
JavaScript入门之事件、cookie、定时等
2011/10/21 Javascript
9行javascript代码获取QQ群成员具体实现
2013/10/16 Javascript
JavaScript搜索字符串并将搜索结果返回到字符串的方法
2015/04/06 Javascript
yui3的AOP(面向切面编程)和OOP(面向对象编程)
2015/05/01 Javascript
jquery插件之文字间歇自动向上滚动效果代码
2016/02/25 Javascript
jQuery实现放大镜效果实例代码
2016/03/17 Javascript
jQuery 3 中的新增功能汇总介绍
2016/06/12 Javascript
jQuery简单获取DIV和A标签元素位置的方法
2017/02/07 Javascript
利用nodeJs anywhere搭建本地服务器环境的方法
2018/05/12 NodeJs
vue interceptor 使用教程实例详解
2018/09/13 Javascript
Vue动态生成el-checkbox点击无法赋值的解决方法
2019/02/21 Javascript
vue获取时间戳转换为日期格式代码实例
2019/04/17 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
2019/07/05 Javascript
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
2019/09/11 Javascript
JavaScript函数IIFE使用详解
2019/10/21 Javascript
vue移动端弹起蒙层滑动禁止底部滑动操作
2020/07/22 Javascript
Python中的pygal安装和绘制直方图代码分享
2017/12/08 Python
Python操作json的方法实例分析
2018/12/06 Python
python 定时器每天就执行一次的实现代码
2019/08/14 Python
详解PyTorch手写数字识别(MNIST数据集)
2019/08/16 Python
Python3将数据保存为txt文件的方法
2019/09/12 Python
如何利用Python 进行边缘检测
2020/10/14 Python
Keds官方网站:购买帆布运动鞋和经典皮鞋
2016/11/12 全球购物
销售找工作求职信
2013/12/20 职场文书
妈妈活动方案
2014/08/15 职场文书
战略性融资合作协议书范本
2014/10/17 职场文书
考研英语复习计划
2015/01/19 职场文书
成品仓管员岗位职责
2015/04/01 职场文书
党员转正党支部意见
2015/06/02 职场文书
2016年小学端午节活动总结
2016/04/01 职场文书
pandas求平均数和中位数的方法实例
2021/08/04 Python
浅谈为什么我的 z-index 又不生效了
2022/07/15 HTML / CSS