python测试开发django-174.模板中include传递参数

前言

模板标签语法 {% include %} ,该标签允许在(模板中)包含其它的模板的内容。
在多个模板中出现相同的代码时,就应该考虑是否要使用 {% include %} 来减少重复。

include 使用

如下这一段如果在多个地方会用到

<form action method="post" id="query_form">
  <div class="form-group">
      <label for="Email1">&#x90AE;&#x7BB1;&#x5730;&#x5740;</label>
      <input type="text" class="form-control" id="Email1" name="email" placeholder="Email">
  </div>
  <div class="form-group">
      <label for="Password1">&#x5BC6;&#x7801;</label>
      <input type="password" class="form-control" id="Password1" name="password" placeholder="Password">
  </div>

  <input type="button" id="save" class="btn btn-info" value="&#x63D0;&#x4EA4;">
</form>

于是可以使用模板标签语法 {% include %}

<body>

{% include 'form.html' %}

</body>

templates目录可以新建一个includes目录,专门放需要导入的代码段,层级结构如下

python测试开发django-174.模板中include传递参数
<body>

{% include 'includes/form.html' %}

</body>

加载的模板名还可以在 view 层中定义, 下面的例子包含了以变量 template_name 的值为名称的模板内容:

{% include template_name %}

include with 使用

一个网页多次引入同一个子模版,子模板中有些是变量,可以用 include with传递变量
如下form,我们希望id是可变的,每次引入传不同的id值 {{ form_id }}

<form action method="post" id="{{ form_id }}">
  <div class="form-group">
      <label for="Email1">&#x90AE;&#x7BB1;&#x5730;&#x5740;</label>
      <input type="text" class="form-control" id="Email1" name="email" placeholder="Email">
  </div>
  <div class="form-group">
      <label for="Password1">&#x5BC6;&#x7801;</label>
      <input type="password" class="form-control" id="Password1" name="password" placeholder="Password">
  </div>

  <input type="button" id="save" class="btn btn-info" value="&#x63D0;&#x4EA4;">
</form>

with给变量赋值

<body>

{% include 'includes/form.html' with form_id='login_form' %}

</body>

传递多个变量

<form action method="{{ method }}" id="{{ form_id }}">
    ......

</form>

多个变量用空格隔开

<body>

{% include 'includes/form.html' with form_id='login_form'  method='post'  %}

</body>

默认情况下子模版可以访问父模板的所有变量,在 Django 中还可以通过使用 only 选项来阻止这个默认行为

{% include 'includes/form.html' with form_id='login_form'  method='post' only %}

with 标签

另外 Django 还提供了单独的 with 标签来修改或者指定变量的值。
可以单独使用,也可以搭配 include 标签使用。使用方法如下:

<!-- 使用 with 标签指定变量 -->

{% with form_id='login_form'  method='post' %}
    {% include 'includes/form.html' %}
{% endwith %}

Original: https://blog.csdn.net/qq_27371025/article/details/121466927
Author: 上海-悠悠
Title: python测试开发django-174.模板中include传递参数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/735557/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 《精通Python爬虫框架Scrapy》第3章 爬虫基础

    这是非常重要的一章,你可能会多次阅读本章,并且经常会在寻找解决方案时回到本章中。我们首先会介绍如何安装Scrapy,然后伴随若干示例及不同的实现,转向开发Scrapy爬虫的方法论。…

    Python 2023年10月6日
    039
  • HDFS 伪分布式环境搭建

    HDFS 伪分布式环境搭建 作者:Grey 原文地址: 博客园:HDFS 伪分布式环境搭建 CSDN:HDFS 伪分布式环境搭建 相关软件版本 Hadoop 2.6.5 CentO…

    Python 2023年10月23日
    034
  • python pandas处理数据的优点_Python pandas之数据处理

    数据写入 我们可以将数据写入到文件中进行永久性的保存,支持的文件格式有HTML、CSV、JSON、Excel。 csv是最为常见的以纯文本文件存储数据文件的格式,它的优点是通用性很…

    Python 2023年8月7日
    053
  • 最全Python绘制条形图(柱状图)

    条形图(bar chart)也称为柱状图,是一种以长方形的长度为变量的统计图表,长方形的长度与它所对应的数值呈一定比例。 ; 一、导入绘图数据 首先导入绘图所需的数据。 impor…

    Python 2023年9月6日
    048
  • n

    文章目录 创建图表 节点 边 检查图的元素 从图中删除元素 使用图构造函数 什么用作节点和边 访问边和邻居 向图、节点和边添加属性 图形属性 节点属性 边缘属性 多图 图生成器和图…

    Python 2023年8月2日
    048
  • Python小技巧:__str__()的妙用

    ; 前言 这里是 Python小技巧的系列文章。这是第三篇, object.__str__(self)方法的妙用。 书接上回,这次还是介绍Python类的内置方法, __str__…

    Python 2023年11月5日
    046
  • web期末作业网页设计——我的家乡(网页源码)

    作品介绍 <span>1.&#x7F51;&#x9875;&#x4F5C;&#x54C1;&#x7B80;&#x4ECB…

    Python 2023年9月16日
    040
  • 使用SharePoint Designer定制开发专家库系统实例!

    将近大半年都没有更新博客了,趁这段时间不忙,后续会继续分享一些技术和实际应用。对于Sharepoint的定制开发有很多种方式,对于一般的应用系统,可以使用Sharepoint本身自…

    Python 2023年6月6日
    0111
  • 21-Series与DataFrame对象的数值运算

    ; 0.本集概览 1.DataFrame和Series一元运算会作用于每一个数据元素2.DataFrame间和Sereis间的二元运算会自动对齐索引,并进行缺失值处理3.DataF…

    Python 2023年8月8日
    079
  • 数据可视化chapter07_大数据2003_02

    matplotlib绘制Axes3D的两种方法: Axes3D(fig,rect=None) 该方法的参数所属画布,rect表示确定三维坐标系为值的元组 创建方式 add_subp…

    Python 2023年9月4日
    045
  • Python:当函数做为参数时的技巧

    下面我们在深度学习项目情境中展示用lambda函数嵌套法修改函数参数个数的应用。我们这是一个联邦学习项目,有多个client客户端,每个client中都有机器学习模型。我们现在有一…

    Python 2023年10月26日
    044
  • 【无标题】

    &#x63D0;&#x793A;&#xFF1A;&#x8FD9;&#x91CC;&#x53EF;&#x4EE5;&#…

    Python 2023年8月17日
    048
  • 课程笔记5:Scrapy框架——Item Pipeline的用法

    Item Pipeline(项目管道)。Spider解析完Response就会产生Item,Item就会被Engine传递到Item Pipeline,被定义的Item Pipel…

    Python 2023年10月1日
    043
  • python pandas csv文件中对字典取值 按行按列取值

    目录: 一、按行读取csv文件 1.给出csv文件 2.python pandas按行读取csv文件,iloc和loc的区别 3.数据处理 3.1字典values的用法 3.2强制…

    Python 2023年8月16日
    043
  • python表白玫瑰花绘制——情人节表白

    python表白玫瑰花绘制——情人节表白 搬运不易,路过的各位大佬请点个赞 python表白玫瑰花绘制——情人节表白 * – python表白玫瑰花绘制——情人节表白 …

    Python 2023年8月1日
    042
  • python-celery基本使用

    python版本库: python:3.8.12 redis:4.1.3 celery:4.3.0 这个版本的搭配可用 启动命令: celery_task是celery工程名 ce…

    Python 2023年8月9日
    081
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球