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之集成开发环境(IDE)
Sep 12 Python
Python爬虫模拟登录带验证码网站
Jan 22 Python
Python实现简单多线程任务队列
Feb 27 Python
Python 函数基础知识汇总
Mar 09 Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 Python
python+os根据文件名自动生成文本
Mar 21 Python
利用Python查看微信共同好友功能的实现代码
Apr 24 Python
Django 开发调试工具 Django-debug-toolbar使用详解
Jul 23 Python
python按行读取文件并找出其中指定字符串
Aug 08 Python
Python实现多线程下载脚本的示例代码
Apr 03 Python
在 Python 中利用 Pool 进行多线程
Apr 24 Python
Python代码实现双链表
May 25 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初学者常见问题集合 修正版(21问答)
2010/03/23 PHP
一个经典的PHP文件上传类分享
2014/11/18 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
PHP编写登录验证码功能 附调用方法
2016/05/19 PHP
ThinkPHP3.2.1图片验证码实现方法
2016/08/19 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
2019/05/06 PHP
javascript下function声明一些小结
2007/12/28 Javascript
不使用jquery实现js打字效果示例分享
2014/01/19 Javascript
jquery中ajax函数执行顺序问题之如何设置同步
2014/02/28 Javascript
简易的投票系统以及js刷票思路和方法
2015/04/07 Javascript
Vue.js实战之利用vue-router实现跳转页面
2017/04/01 Javascript
微信小程序-横向滑动scroll-view隐藏滚动条
2017/04/20 Javascript
修改Nodejs内置的npm默认配置路径方法
2018/05/13 NodeJs
webpack+vue-cil中proxyTable处理跨域的方法
2018/07/20 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
快速搭建Node.js(Express)用户注册、登录以及授权的方法
2019/05/09 Javascript
js实现幻灯片轮播图
2020/08/14 Javascript
vue开发chrome插件,实现获取界面数据和保存到数据库功能
2020/12/01 Vue.js
在GitHub Pages上使用Pelican搭建博客的教程
2015/04/25 Python
全面解析Python的While循环语句的使用方法
2015/10/13 Python
python实现Adapter模式实例代码
2018/02/09 Python
python提取图像的名字*.jpg到txt文本的方法
2018/05/10 Python
Python 字符串转换为整形和浮点类型的方法
2018/07/17 Python
Python实现获取当前目录下文件名代码详解
2020/03/10 Python
让你相见恨晚的十个Python骚操作
2020/11/18 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
网上书店创业计划书
2014/01/12 职场文书
公证书样本
2014/04/10 职场文书
小学生倡议书范文
2014/05/13 职场文书
技校毕业生自荐书
2014/05/23 职场文书
工程项目经理任命书
2014/06/05 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
2014年医院后勤工作总结
2014/12/06 职场文书
求职简历自我评价范文
2015/03/10 职场文书
收银员岗位职责范本
2015/04/07 职场文书
SpringBoot详解执行过程
2022/07/15 Java/Android