django實現(xiàn)模板中的字符串文字和自動轉(zhuǎn)義
本文只考慮模板中的字符串,不考慮字符串中帶標簽的情況。
模板中的字符串文字不會自動轉(zhuǎn)義,因為這里默認模板的作者已經(jīng)正確書寫模板的內(nèi)容。
{{ data|default:"This is a string literal." }}
如果我們在data不存在時,顯示默認文字“3 < 2”,則代碼如下:
{{ data|default:"3 < 2" }}
注意:不應(yīng)該寫成如下形式
{{ data|default:"3 < 2" }}
雖然,兩種方式的頁面顯示結(jié)果一致,均為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>
系統(tǒng)名:<input type="text" name="hostname" value={{ hostname }} ><br>
開始時間:<input type="text" name="startTime" maxlength="19" value= {{ startTime }}><br>
結(jié)束時間:<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>
結(jié)束時間:
<input type="text" name="endTime" value= "{{ endTime }}" ><br>
就不會截斷。
以上這篇django實現(xiàn)模板中的字符串文字和自動轉(zhuǎn)義就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python程序中的線程操作 concurrent模塊使用詳解
這篇文章主要介紹了python程序中的線程操作 concurrent模塊使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-09-09
Python中連接不同數(shù)據(jù)庫的方法總結(jié)
在數(shù)據(jù)驅(qū)動的現(xiàn)代應(yīng)用開發(fā)中,Python憑借其豐富的庫和強大的生態(tài)系統(tǒng),成為連接各種數(shù)據(jù)庫的理想編程語言,下面我們就來看看如何使用Python實現(xiàn)連接常用的幾個數(shù)據(jù)庫吧2025-02-02

