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


Posted in Python onMarch 31, 2020

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

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

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

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

{{ data|default:"3 < 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实现模板中的字符串文字和自动转义就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python抢过年的火车票附源码
Dec 07 Python
python 简单的绘图工具turtle使用详解
Jun 21 Python
Python实现一个简单的验证码程序
Nov 03 Python
Python使用cx_Freeze库生成msi格式安装文件的方法
Jul 10 Python
pandas计数 value_counts()的使用
Jun 24 Python
python实现名片管理器的示例代码
Dec 17 Python
tensorflow之获取tensor的shape作为max_pool的ksize实例
Jan 04 Python
python 删除excel表格重复行,数据预处理操作
Jul 06 Python
pytorch使用horovod多gpu训练的实现
Sep 09 Python
Python实现像awk一样分割字符串
Sep 15 Python
详解python中的异常捕获
Dec 15 Python
Python 如何实现文件自动去重
Jun 02 Python
Python使用graphviz画流程图过程解析
Mar 31 #Python
Django模板之基本的 for 循环 和 List内容的显示方式
Mar 31 #Python
基于python实现计算且附带进度条代码实例
Mar 31 #Python
Django values()和value_list()的使用
Mar 31 #Python
利用python实现凯撒密码加解密功能
Mar 31 #Python
python手机号前7位归属地爬虫代码实例
Mar 31 #Python
django修改models重建数据库的操作
Mar 31 #Python
You might like
php中字符串和正则表达式详解
2014/10/23 PHP
php jsonp单引号转义
2014/11/23 PHP
微信自定义菜单的处理开发示例
2015/04/16 PHP
PHP实现的构造sql语句类实例
2016/02/03 PHP
利用PHP生成CSV文件简单示例
2016/12/21 PHP
Using the TextRange Object
2006/10/14 Javascript
js左侧多级菜单动态的解决方案
2010/02/01 Javascript
jquery tab插件制作实现代码
2010/06/22 Javascript
JavaScript中使用构造器创建对象无需new的情况说明
2012/03/01 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
2012/12/24 Javascript
js获取url参数代码实例分享(JS操作URL)
2013/12/13 Javascript
百度判断手机终端并自动跳转js代码及使用实例
2014/06/11 Javascript
浅谈JavaScript实现面向对象中的类
2014/12/09 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
javascript实现倒计时跳转页面
2016/01/17 Javascript
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
Linux下Python获取IP地址的代码
2014/11/30 Python
Python获取暗黑破坏神3战网前1000命位玩家的英雄技能统计
2016/07/04 Python
Python cookbook(数据结构与算法)实现查找两个字典相同点的方法
2018/02/18 Python
python针对excel的操作技巧
2018/03/13 Python
python中将\\uxxxx转换为Unicode字符串的方法
2018/09/06 Python
python 判断矩阵中每行非零个数的方法
2019/01/26 Python
python简单贪吃蛇开发
2019/01/28 Python
Python3.6.x中内置函数总结及讲解
2019/02/22 Python
浅析python 通⽤爬⾍和聚焦爬⾍
2020/09/28 Python
Python __slots__的使用方法
2020/11/15 Python
css3实现图片遮罩效果鼠标hover以后出现文字
2013/11/05 HTML / CSS
ProBikeKit新西兰:自行车套件,跑步和铁人三项装备
2017/04/05 全球购物
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
幼儿园开学家长寄语
2014/01/19 职场文书
送餐员岗位职责范本
2014/02/21 职场文书
借钱欠条怎么写
2015/07/03 职场文书
社区干部培训心得体会
2016/01/06 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
JavaScript阻止事件冒泡的方法
2021/12/06 Javascript
Win11 Build 22000.829更新补丁KB5015882发布(附更新修复内容汇总)
2022/07/15 数码科技