上一篇,我们学习了Python测试开发django5.templates模板变量传参

如果我们有2个页面home.html和demo.html,两个页面是独立的没有关系的,现在需要从home.html页,点某个超链按钮,跳转到demo.html页,home.html页面就需要配置demo.html的页面链接

项目目录

helloworld\hello\templates\demo.html文件写入内容

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>demo模板</title>
</head>
<body><p><h4> 我的博客 </h4><a href="https://blog.csdn.net/qq_36502272" target="_blank" > 博客网址 </a><hr><h4> 软件测试技术交流分享 </h4><p>软件测试技术、方法、测试方案分享交流、python自动化测试、性能Jmeter工具交流学习<br>QQ交流群212683165</p><a href="https://blog.csdn.net/qq_36502272" target="_blank" >点击访问博客</a>
</p></body>
</html>

helloworld\hello\templates\home.html文件写入内容

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>home模板</title>
</head>
<body><p> 欢迎进入home页面<hr><a href="demo" > 点击跳转demo页面 </a>
</p></body>
</html>

helloworld\hello\views.py文件写入内容

from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.# def home(request):
#     return HttpResponse("hello")
def home(request):return render(request, 'home.html')def demo(request):return render(request, 'demo.html')

helloworld\helloworld\urls.py文件写入内容

from django.contrib import admin
from django.urls import path
from django.conf.urls import url
from hello import viewsurlpatterns = [path('admin/', admin.site.urls),url('^demo$', views.demo),url('^home$', views.home),
]

这样就实现了从home.html页,点击某个超链接跳转demo.html页

我们目前是把<a href="demo" > 点击跳转demo页面 </a>在home.html页写四的,如果多个页面都用到这个链接时,地址发生变化了,修改的地方就太多了,维护成本太高,这时候我们就可以给url标记上唯一的名字,也就是name参数,接下来在url配置里加个name名称,由原来的url('^demo$', views.demo)变为url('^demo$', views.demo,name="Demo")

helloworld\helloworld\urls.py文件更新为:

urlpatterns = [path('admin/', admin.site.urls),url('^demo$', views.demo,name="Demo"),url('^home$', views.home),
]

对于像<a>这样链接的操作用法:

不带参数的:{% url 'name' %}

带参数的:参数可以是变量名 {% url 'name' 参数 %}

home.html里<a href="demo" > 点击跳转demo页面 </a>变更为<a href={% url 'Demo' %} > 点击跳转demo页面 </a>

helloworld\hello\templates\home.html文件更新为:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>home模板</title>
</head>
<body><p> 欢迎进入home页面<hr><a href={% url 'Demo' %} > 点击跳转demo页面 </a>
</p></body>
</html>

所以这里的改变为:url('^demo$', views.demo,name="Demo")(对于其他部分自动补脑),在<a href={% url 'Demo' %} > 点击跳转demo页面 </a>    解释:{% url 'Demo' %}这里的Demo'代表着这个url自动去寻找django的url里面name="Demo'"这条链接,并将找到的url -demo.html赋值给<a>标签中的href,当链接发生变化,我们只需要更新urls.py里面的'^demo$'就可以了。

【UI设计、平面设计、LOGO设计、淘宝设计需求】商务合作QQ:2017340535

【软件测试方案设计、测试方法指导】商务合作QQ:2017340535

Python测试开发django5.urls.py参数name与a标签的引用相关推荐

  1. Python测试开发django5.templates模板变量传参

    上一篇,我们学习了Python测试开发django4.templates模板配置 templates模板中html文件是一个静态页面,写四的,如果有时我们想动态的传入一些不同的参数,想实现在一个固定的 ...

  2. 可爱的python测试开发库(python测试开发工具库汇总)

    2019独角兽企业重金招聘Python工程师标准>>> 欢迎转载,转载请注明来源: github地址 谢谢点赞 本文地址 Python测试开发库 参考资料 https://githu ...

  3. Python测试开发django4.templates模板配置

    [上一篇]我们讲了Python测试开发django3.视图和URL配置 今天详细介绍下 Django 模板的应用,模板是一个文本,用于分离文档的表现形式和内容. 我们已经知道创建项目用django-a ...

  4. python测试开发自学教程-2019第一期《python测试开发》课程,10月13号开学

    2019第一期<python测试开发>课程,10月13号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:10月13号-12月8号,每周六.周日晚上20: ...

  5. 可爱的python测试开发库及项目(python测试开发工具库汇总)

    转载: https://www.jianshu.com/p/ea6f7fb69501 可爱的python测试开发库及项目(python测试开发工具库汇总) github地址 相关书籍下载 Python ...

  6. Python 测试开发从入门到高手成长之路

    > 文末领取测试开发进阶指南和福利! 在" **质量第一,效率为王** "的移动互联网和大数据时代,互联网 IT 技术团队为了应对产品快速迭代要求,就必须具备持续交付的能力. ...

  7. python global用法_【python测试开发栈】python基础语法大盘点

    周边很多同学在用python,但是偶尔会发现有人对python的基础语法还不是特别了解,所以帮大家梳理了python的基础语法(文中的介绍以python3为例).如果你已然是python大牛,可以跳过 ...

  8. python 测试开发请关注这个新框架

    如果你之前有接触 python 测试开发,那你应该会听过 django 或者 flask. 但是最近一个新的框架出现在人们的视野中,短短 1 年在 GitHub 上就收集了 20000+ star, ...

  9. 《Python测试开发技术栈—巴哥职场进化记》—初来乍到,请多关照

    上文<巴哥职场进化记-Python测试开发技术栈>开篇讲到巴哥毕业初到深圳,见到了来自五湖四海的室友.一番畅聊之后,抱着对未来职场生活的期待,大家都进入了梦乡.今天我们来看看巴哥第一天上班 ...

最新文章

  1. HDLBits 系列(23)3 输入的 LUT
  2. zqgame《每日一言》
  3. apache 目录访问加密 简单
  4. shell 学习笔记(四)
  5. lambda中sorted排序
  6. AD库转换为KiCAD库的方法
  7. 新书速递 | 《知识图谱:方法、实践与应用》
  8. Tips--更改Jupyter Notebook的默认工作路径
  9. 【报错】table burner has no column named USER (code 1): , while compiling: INSERT INTO burner(USER,YELL
  10. 青蛙学Linux—Zabbix Web使用之模板④基于触发器的动作和告警媒介
  11. linux群ping服务器各网段脚本
  12. Apizza在线接口工具如何支持RESTful Path 参数
  13. J2EE框架技术(SpringMVC) 知识点笔记(8)
  14. 代数方程与差分方程模型(三):按年龄分组的人口模型
  15. 安静模式 运行 reg注册表文件
  16. 服务器系统试用,“雪豹”安装篇(3)
  17. 【Unity3D】在Unity中实现UI指向箭头
  18. m3u8转mp4无损转换的方法和技巧
  19. 被ddos攻击,附加IP有作用吗
  20. VSCode STM32跨平台开发环境搭建

热门文章

  1. PHP单选框实现的方法,jQuery简单实现遍历单选框的方法
  2. php中cookie存的是什么,PHP中Cookie存在的作用和用法
  3. php 地址传递,PHP引用符传递存储地址
  4. unity摄影机depth模式_Unity3D Camera 摄像机属性详解
  5. c语言程序中必不可少的,C语言程序设计(第3章程序控制语句)2
  6. 一篇博客读懂设计模式之-----策略模式
  7. while循环python的范围_python-无法在while循环中从列表中排除一定范围内的项目
  8. php atlas,apache atlas是什么
  9. php代码丑,php – 屏幕截图你生命中见过的最丑陋的HTML
  10. api idea 开发rest_部分介绍使用IDEA的rest client