2012-09-19 8 views
29

Twigは、{{ }},{% %}{# #}区切り文字を使用します。TwigテンプレートでTwigデリミタをエスケープするにはどうすればいいですか?

しかし、{{ }}をTwigテンプレートに表示するにはどうすればよいですか? 私はHTMLエスケープについて話していません。

私はTwigのテンプレートにひげそりテンプレートを入れて、AJAX呼び出しからのデータを入力するようにしたいので、質問します。

答えて

50

最も簡単な方法は、変数式を使用することにより、出力に変数の区切り文字({{)です:

{{ '{{' }} 

代替(あなたはあまりをエスケープする必要があるときに使用される)が生(verbatim 1.12以降)ブロックであり、

{% raw %} 
    <ul> 
    {% for item in seq %} 
     <li>{{ item }}</li> 
    {% endfor %} 
    </ul> 
{% endraw %} 

実際には、それはかなりwell documentedです。

+0

ありがとうございます、私はドキュメントでそれを探しましたが、見たことがありませんでした。 rawはこの問題の完璧な解決策です。 –

+3

生のタグは '逐語的な'タグの代わりに非難されました – DMTintner

+0

@DMTintnerありがとう、答えを更新しました。 – raina77ow

10

Twig documentationには2つの提案があります。最初は、出力に単に文字列です:{

{% raw %} 
    your mustache content here 
{% endraw %} 
0
{% block body %} 
<table class="table table-striped"> 
    {% for temp in data %} 
    <tr> 
     <td>{{temp.fname}}</td> 
     <td>{{temp.lname}}</td> 
    </tr> 
    {% endfor %} 
</table> 

:あなたは長いセクション出力したい場合は、そうでない場合

{{ '{{' }} 

あなたがraw tagを使用することができます(あなたがやるようですね) %endblock%}

関連する問題