2

有什么方法可以强制龙卷风跳过模板的一部分变量?

我想要这样的东西:

模板

{{ block render_me }} 
   {% for var in range(1,3) %}
       {{ var }} 
   {% end %}
{{ end }}
{{ block render_me_later }} 
   {% magic_no_replace_vars_word %}
   <script id="mustacheTemplate"> 
        <ul data-role="listview" data-inset="true">{{#items}}<li>{{item}}</li>{{/items}}</ul>
   </script> 
   {% end %}
{{ end }} 

输出

1 2 3
<script id="mustacheTemplate"> 
<ul data-role="listview" data-inset="true">{{#items}}<li>{{item}}</li>{{/items}}</ul>
</script> 

同样的解决方案django也受到欢迎。

4

2 回答 2

1

在 Tornado 中,您可以使用{{!to 输出{{{%!for {%。如果没有打开标签,关闭标签应该按字面意思工作。

在 Django 中,正如 Chris Pratt 所提到的,您可以使用{% templatetag openvariable %}var{% templatetag closevariable %}for {{var}}. 由于这很糟糕,如果您所做的不仅仅是一两页,那么可能值得verbatim像 supervacuo 建议的那样反向移植模板标签。

于 2012-08-04T00:29:56.503 回答
0

不确定 Tornado,但对于 Django,您可能需要模板{% verbatim %}标签

输入

{% block render_me %}
{% for var in range(1,3) %}
    {{ var }} 
{% endfor %}
{% endblock %}
{% block render_me_later %} 
   {% verbatim %}
   <script id="mustacheTemplate"> 
        <ul data-role="listview" data-inset="true">{{#items}}<li>{{item}}</li>{{/items}}</ul>
   </script> 
   {% endverbatim %}
{% endblock %} 

输出

1 2 3
<script id="mustacheTemplate"> 
<ul data-role="listview" data-inset="true">{{#items}}<li>{{item}}</li>{{/items}}</ul>
</script> 

不幸的是,它还没有成为发布版本(计划在 1.5 中发布)——要么使用 Django 的开发版本,自己反向移植添加的模板标签,要么使用类似的东西django-templatetag-handlebars为你实现它,直到你可以升级.

于 2012-08-03T16:16:44.327 回答