django实现模板中的字符串文字和自动转义

 更新时间:2020年03月31日 11:29:34   作者:宁静致远_LL专栏  
这篇文章主要介绍了django实现模板中的字符串文字和自动转义,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

本文只考虑模板中的字符串,不考虑字符串中带标签的情况。

模板中的字符串文字不会自动转义,因为这里默认模板的作者已经正确书写模板的内容。

{{ data|default:"This is a string literal." }}

如果我们在data不存在时,显示默认文字“3 < 2”,则代码如下:

{{ data|default:"3 &lt; 2" }}

注意:不应该写成如下形式

{{ data|default:"3 < 2" }}

虽然,两种方式的页面显示结果一致,均为3 < 2,但是后者超出了模板作者的控制范围。

补充知识:Django view通过render将“字符串”传给页面插件时,值被截断问题

view.py中代码:

  # startTime = request.POST.get('startTime')
  startTime = '2019-10-10 01:01:01'
  endTime = request.POST.get('endTime')
  hostname = d1.hostname
 
  ip = d1.ip
  port = d1.port
  user = d1.user
  password = d1.password
  cmd = '/bin/python /home/db/mysql/scripts/analyze_binlog.py \''+ str(startTime) + '\' \'' +str(endTime)+'\''
  result = operation(ip, port, user, password, cmd)
  context={'status':result,'id':id,'hostname':hostname,'startTime':startTime,'endTime':endTime}
  return render(request, 'instance/binlog/show_analyze_binlog.html', context)

页面show.html

</script>
{#<div class="ibox-title">#}
 <form id="show_binlog_detail" name="show_binlog_detail" action="?" method = 'post' >
 序号:<input type="text" name="id" value={{ id }}><br>
 系统名:<input type="text" name="hostname" value={{ hostname }} ><br>
 开始时间:<input type="text" name="startTime" maxlength="19" value= {{ startTime }}><br>
 结束时间:<input type="text" name="endTime" value= {{ endTime }} ><br>
 <input type="button" id="show_binlog_detail" onclick="submitSelet('show_binlog_detail')" value="分析" />
 </form>
<table>
 {% for i in status %}
  <tr>
  <td>{{ i }}</td>
  </tr>
 {% endfor %}
</table>

view.py中startTime = '2019-10-10 01:01:01' 传给页面form中name='startTime'时值被截断成'2019-10-10'

其原因是value={{ startTime}} 没加双引号

改成:

开始时间:

<input type="text" name="startTime" maxlength="19" value= "{{ startTime }}" ><br>

结束时间:

<input type="text" name="endTime" value= "{{ endTime }}" ><br>

就不会截断。

以上这篇django实现模板中的字符串文字和自动转义就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Tensorflow2.10使用BERT从文本中抽取答案实现详解

    Tensorflow2.10使用BERT从文本中抽取答案实现详解

    这篇文章主要为大家介绍了Tensorflow2.10使用BERT从文本中抽取答案实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Python  pip安装lxml出错的问题解决办法

    Python pip安装lxml出错的问题解决办法

    这篇文章主要介绍了Python pip安装lxml出错的问题解决办法的相关资料,需要的朋友可以参考下
    2017-02-02
  • python自定义时钟类、定时任务类

    python自定义时钟类、定时任务类

    这篇文章主要为大家详细介绍了Python自定义时钟类、定时任务类,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • Python语言实现机器学习的K-近邻算法

    Python语言实现机器学习的K-近邻算法

    今天学习的算法是KNN近邻算法。KNN算法是一个监督学习分类器类别的算法。下面我们来详细的探讨下
    2015-06-06
  • Python(wordcloud)如何根据文本数据(.txt文件)绘制词云图

    Python(wordcloud)如何根据文本数据(.txt文件)绘制词云图

    这篇文章主要给大家介绍了关于Python(wordcloud)如何根据文本数据(.txt文件)绘制词云图的相关资料,词云Wordcloud是文本数据的一种可视化表示方式,它通过设置不同的字体大小或颜色来表现每个术语的重要性,需要的朋友可以参考下
    2024-05-05
  • 使用python爬虫实现子域名探测问题

    使用python爬虫实现子域名探测问题

    子域名枚举是为一个或多个域查找子域的过程,它是信息收集阶段的重要组成部分,这篇文章主要介绍了使用python实现子域名探测,需要的朋友可以参考下
    2022-07-07
  • 详解如何利用Numpy生成各种各样的数组

    详解如何利用Numpy生成各种各样的数组

    Numpy提供了多种函数和方法,可以方便地生成不同形状和类型的数组,今天小编就带大家学习一下如何利用 Numpy 生成各种各样的数组吧
    2023-07-07
  • python字典排序浅析介绍

    python字典排序浅析介绍

    在数据处理时,为了方便统计经常使用字典存储数据。python中的字典是‘键:值’对的可变序列。排序时可以指定根据键或者是值为对象进行排序。用到的函数是sorted(),需要的朋友们下面随着小编来一起学习吧
    2022-10-10
  • 利用Python实现刘谦春晚魔术

    利用Python实现刘谦春晚魔术

    刘谦在2024年春晚上的撕牌魔术的数学原理非常简单,可以用Python完美复现,文中通过代码示例给大家介绍的非常详细,感兴趣的同学可以自己动手尝试一下
    2024-02-02
  • Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析

    Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法

    这篇文章主要介绍了Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块,结合实例形式较为详细的分析了shelve、xml、configparser、hashlib、hmac等模块的功能及使用方法,需要的朋友可以参考下
    2019-04-04

最新评论