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中__call__用法实例
Aug 29 Python
python网络编程之文件下载实例分析
May 20 Python
谈谈如何手动释放Python的内存
Dec 17 Python
Python中元组,列表,字典的区别
May 21 Python
python最长回文串算法
Jun 04 Python
使用pandas对两个dataframe进行join的实例
Jun 08 Python
Python元组常见操作示例
Feb 19 Python
python Tcp协议发送和接收信息的例子
Jul 22 Python
使用python获取邮箱邮件的设置方法
Sep 20 Python
python实现XML解析的方法解析
Nov 16 Python
利用python进行数据加载
Jun 20 Python
Elasticsearch 聚合查询和排序
Apr 19 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 根据IP地址控制访问的代码
2010/04/22 PHP
PHP中执行cmd命令的方法
2014/10/11 PHP
php版微信公众号自定义分享内容实现方法
2016/09/22 PHP
[HTML/CSS/Javascript]WWTJS
2007/09/25 Javascript
jQuery的链式调用浅析
2010/12/03 Javascript
js 取时间差去掉周六周日实现代码
2012/12/25 Javascript
JavaScript中的Math 使用介绍
2014/04/21 Javascript
浅谈jquery回调函数callback的使用
2015/01/30 Javascript
JS版元素周期表实现方法
2015/08/05 Javascript
JQuery DIV 动态隐藏和显示的方法
2016/06/23 Javascript
详解Js模板引擎(TrimPath)
2016/11/22 Javascript
jQuery封装animate.css的实例
2018/01/04 jQuery
微信小程序倒计时功能实例代码
2018/07/17 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
Vue使用Proxy监听所有接口状态的方法实现
2019/06/07 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
详解python的数字类型变量与其方法
2016/11/20 Python
详解Python之数据序列化(json、pickle、shelve)
2017/03/30 Python
Python日期的加减等操作的示例
2017/08/15 Python
python编程培训 python培训靠谱吗
2018/01/17 Python
初探TensorFLow从文件读取图片的四种方式
2018/02/06 Python
python实现简易数码时钟
2021/02/19 Python
python事件驱动event实现详解
2018/11/21 Python
Python实现截取PDF文件中的几页代码实例
2019/03/11 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
2019/06/11 Python
python实现在多维数组中挑选符合条件的全部元素
2019/11/26 Python
python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解
2020/02/11 Python
Python3 用什么IDE开发工具比较好
2020/11/28 Python
CSS中几个与换行有关的属性简明总结
2014/04/15 HTML / CSS
html5 学习简单的拾色器
2010/09/03 HTML / CSS
单位门卫岗位职责
2013/12/20 职场文书
科级干部考察材料
2014/02/15 职场文书
车辆工程专业求职信
2014/04/28 职场文书
秋天的怀念教学反思
2014/04/28 职场文书
和谐家庭事迹材料
2014/12/20 职场文书
食堂卫生管理制度
2015/08/04 职场文书