2013-05-30 84 views
0

我需要將JavaScript對象注入Swig模板中的HTML腳本標記。覆蓋單個標記的默認Swig模板過濾器

<script> 
    var myObj = {{myObj|json_encode}}; 
</script> 

json_encode部分工作正常,但隨後在默認HTML過濾踢,我得到這個在我的輸出:

<script> 
    var myObj = {&quot;socketIOServerAddress&quot;:&quot;http://localhost:8989/&quot;} 
</script> 

如何禁用這一個標籤的缺省過濾器?

回答

0

那麼,這比預期容易。出於某種原因,我能夠chain another filter, raw, which disables the built-in filtering。有點反直覺,但它的工作原理。

<script> 
    var myObj = {{myObj|json_encode|raw}}; 
</script> 
+0

但你並不需要那個! json_encode是你自己的過濾器嗎? 只需確認,您聲明過濾功能爲「安全」,並且您不需要原始的... 我的過濾器名爲「attr」並使用函數「attrString」: var attrString = function(); attrString.safe = true; _swig.setFilter('attr',attrString); – sebilasse