Python:Djangoにおける{}}タグとlayuiのlaytplのテンプレートセパレータの競合解決方法
layuiを使用する場合,layuiデータテーブルのテンプレートを使用する必要があり,{}}エスケープの問題に遭遇する.djangoでは{{}}が変数値を取得し,layuiのlaytplテンプレートセパレータ{}}{{}}がlaytplでデフォルトのセパレータであることと衝突する.
方法1:現在のページにlayuiのtableが使用されていない場合は、再定義区切り文字を使用できます.
方法2:現在のページでlayuiのtableを使用している場合は、djangoが指定した内容を翻訳しない必要があります.
layuiのデータテーブルコンポーネントのソースコードにセパレータが書き込まれているため、laytpl.configカスタムテンプレートセパレータでは問題を解決できません.
使用すると、ページにペアの文字化けしが表示されます
感謝:https://www.cnblogs.com/ligh-test/p/9838145.html
Django 1.5から、{%verbatim%}ラベル(verbatimの意味は逐字翻訳、字面意味)をサポートし、Djangoはverbatimラベルパッケージの内容をレンダリングしません.
だから{{}}前後に{%verbatim%}を付けるだけ および {% endverbatim %}ラベル
元のエラーコード:
変更後の実行可能コード:
方法1:現在のページにlayuiのtableが使用されていない場合は、再定義区切り文字を使用できます.
laytpl.config({
open: ''
});
//
laytpl([
'' //JS
,' 。'
].join('')).render({
name: ' '
}, function(string){
console.log(string); //
});
方法2:現在のページでlayuiのtableを使用している場合は、djangoが指定した内容を翻訳しない必要があります.
layuiのデータテーブルコンポーネントのソースコードにセパレータが書き込まれているため、laytpl.configカスタムテンプレートセパレータでは問題を解決できません.
使用すると、ページにペアの文字化けしが表示されます
{
{# if(d.data.toolbar){ }}
{
{# } }}
{
{# if(d.data.loading){ }}{
{# } }}{
{# var left, right; }}
{
{# layui.each(d.data.cols, function(i1, item1){ }}{
{# layui.each(item1, function(i2, item2){ }}{
{# if(item2.fixed && item2.fixed !== "right"){ left = true; } }}{
{# if(item2.fixed === "right"){ right = true; } }}{
{# var isSort = !(item2.colGroup) && item2.sort; }}{
{# }); }}{
{# }); }}
{
{# if(item2.type === "checkbox"){ }}{
{# } else { }}{
{item2.title||""}}{
{# if(isSort){ }}{
{# } }}{
{# } }}
{
{# if(item2.type === "checkbox"){ }}{
{# } else { }}{
{item2.title||""}}{
{# if(isSort){ }}{
{# } }}{
{# } }}
感謝:https://www.cnblogs.com/ligh-test/p/9838145.html
Django 1.5から、{%verbatim%}ラベル(verbatimの意味は逐字翻訳、字面意味)をサポートし、Djangoはverbatimラベルパッケージの内容をレンダリングしません.
だから{{}}前後に{%verbatim%}を付けるだけ および {% endverbatim %}ラベル
元のエラーコード:
{
{ d.name }}
変更後の実行可能コード:
{% verbatim %}{
{ d.name }} {% endverbatim %}