Django layui {{}} ,模版渲染 衝突
阿新 • • 發佈:2018-11-17
layui的table的自定義模板需要用到{{}},但是和Django的{{}}衝突了,layui的{{}}失效了
解決方法:從Django 1.5開始,支援{% verbatim %}標籤(verbatim的意思是逐字翻譯的,字面意思的),Django不會渲染verbatim標籤包裹的內容
<table class="layui-table" lay-data="{ page: true, limit:10, url:'/audio/getUpCodeByPage'}">
<thead>
<tr>
<th lay-data="{field:'id', width:50, sort: true}">ID</th>
<th lay-data="{field:'up_time', width:180, sort: true,}">上傳時間</th>
<th lay-data="{field:'code', width:120, templet: '#codeTpl2'}">上傳檢視</th>
<th lay-data="{field:'code', width:120, templet: '#codeTpl3'}" >下載檢視</th>
<th lay-data="{field:'code', width:180 }">上傳批次</th>
<th lay-data="{field:'status', width:120, templet: '#statusTpl'}">任務狀態</th>
</tr>
</thead>
</table>
<script>
layui.use('table', function(){
var table = layui.table;
});
</script>
<script type="text/html" id="codeTpl2">
<a class="layui-btn layui-btn-sm" href="/audio/upshow{% verbatim %}{{ d.code }}{% endverbatim %}/">
<i class="layui-icon"></i>
</a>
</script>
將layui用到的{{}},用
{% verbatim %}{% endverbatim %}
包起來就可以正確顯示。如上程式碼所示