django实现模板中的字符串文字和自动转义
本文只考虑模板中的字符串,不考虑字符串中带标签的情况。
模板中的字符串文字不会自动转义,因为这里默认模板的作者已经正确书写模板的内容。
{{ 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实现模板中的字符串文字和自动转义就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Tensorflow2.10使用BERT从文本中抽取答案实现详解
这篇文章主要为大家介绍了Tensorflow2.10使用BERT从文本中抽取答案实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-04-04Python(wordcloud)如何根据文本数据(.txt文件)绘制词云图
这篇文章主要给大家介绍了关于Python(wordcloud)如何根据文本数据(.txt文件)绘制词云图的相关资料,词云Wordcloud是文本数据的一种可视化表示方式,它通过设置不同的字体大小或颜色来表现每个术语的重要性,需要的朋友可以参考下2024-05-05Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法
这篇文章主要介绍了Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块,结合实例形式较为详细的分析了shelve、xml、configparser、hashlib、hmac等模块的功能及使用方法,需要的朋友可以参考下2019-04-04
最新评论