热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

上一篇,我们学习了Python测试开发django4.templates模板配置templates模板中html文件是一个静态页面,写四的,

上一篇,我们学习了Python测试开发django4.templates模板配置

      templates模板中html文件是一个静态页面,写四的,如果有时我们想动态的传入一些不同的参数,想实现在一个固定的html样式,这就可以用django的模板变量传参来解决。

项目目录

模板语法

helloworld\hello\templates\demo.html 文件中用{{html变量名}}表示变量名





我的博客

{{name}}

软件测试技术交流分享-创建时间{{create_time}}

软件测试技术、方法、测试方案分享交流、Python自动化测试交流学习、性能Jmeter工具交流学习
QQ交流群212683165

点击访问博客


helloworld\hello\views.py 文件中用{'html变量名':传views变量名或'传值'}表示传参

# 传views变量名
def demo(request):name_dict = {'name': '橙子探索测试'}skill_list = ['python自动化测试','测试方案','jmeter性能自动化测试']return render(request, 'demo.html', {'name_dict': name_dict, 'skill_list': skill_list})# 传值 
def demo(request):create_time = time.timereturn render(request, 'demo.html', {'create_time': create_time, 'name': '橙子探索测试'})

模板路径

向django说明模板的路径,helloworld\helloworld\settings.py文件里配置模板路径'DIRS'为 [BASE_DIR+"/templates",],

TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [BASE_DIR+"/templates",],'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},},
]

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),
]

案例1

helloworld\hello\templates\demo.html设置变量{{name}}、{{create_time}}

helloworld\hello\views.py 设置传参{'create_time': create_time, 'name': '橙子探索测试'}

传参字典中的key create_time、name对应模板中的变量{{create_time}}、{{name}},根据key取出对应的value

# demo.html



我的博客

{{name}}

软件测试技术交流分享-创建时间{{create_time}}

软件测试技术、方法、测试方案分享交流、Python自动化测试交流学习、性能Jmeter工具交流学习
QQ交流群212683165

点击访问博客



# urls.pyfrom django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
import timedef index(request):return HttpResponse("hello")def demo(request):create_time = time.timereturn render(request, 'demo.html', {'create_time': create_time, 'name': '橙子探索测试'})

访问http://127.0.0.1:8000/demo

案例2

helloworld\hello\templates\demo.html设置变量{{name_dict}}取整个字典、{{name_dict.name}}取字典中的name值,{{skill_list}}取整个列表、{{skill_list.0}}取列表中第1个值

helloworld\hello\views.py 设置传参{'name_dict': name_dict, 'skill_list': skill_list}

# demo.html



{{name_dict}},{{skill_list}}

{{name_dict.name}}

软件测试技术交流分享{{create_time}}

软件测试技术、方法、测试方案分享交流、{{skill_list.0}}、性能Jmeter工具交流学习
QQ交流群212683165

点击访问博客



# urls.py
from django.shortcuts import render
from django.http import HttpResponse
# Create your views here.
import timedef index(request):return HttpResponse("hello")def demo(request):name_dict = {'name': '橙子探索测试'}skill_list = ['python自动化测试','测试方案','jmeter性能自动化测试']return render(request, 'demo.html', {'name_dict': name_dict, 'skill_list': skill_list})

访问http://127.0.0.1:8000/demo

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

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



推荐阅读
  • Spring Data JdbcTemplate 入门指南
    本文将介绍如何使用 Spring JdbcTemplate 进行数据库操作,包括查询和插入数据。我们将通过一个学生表的示例来演示具体步骤。 ... [详细]
  • 在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ... [详细]
  • 一个建表一个执行crud操作建表代码importandroid.content.Context;importandroid.database.sqlite.SQLiteDat ... [详细]
  • 2022年2月 微信小程序 app.json 配置详解:启用调试模式
    本文将详细介绍如何在微信小程序的 app.json 文件中启用调试模式(debug),并通过实际案例展示其配置方法和应用场景。 ... [详细]
  • 本文节选自《NLTK基础教程——用NLTK和Python库构建机器学习应用》一书的第1章第1.2节,作者Nitin Hardeniya。本文将带领读者快速了解Python的基础知识,为后续的机器学习应用打下坚实的基础。 ... [详细]
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 本文介绍如何在 Android 中自定义加载对话框 CustomProgressDialog,包括自定义 View 类和 XML 布局文件的详细步骤。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • javascript分页类支持页码格式
    前端时间因为项目需要,要对一个产品下所有的附属图片进行分页显示,没考虑ajax一张张请求,所以干脆一次性全部把图片out,然 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 本文详细介绍了如何使用Python中的smtplib库来发送带有附件的邮件,并提供了完整的代码示例。作者:多测师_王sir,时间:2020年5月20日 17:24,微信:15367499889,公司:上海多测师信息有限公司。 ... [详细]
  • 大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式
    大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式 ... [详细]
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
author-avatar
磊磊860219
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有