今天我正在尝试使用jquery-tmpl {{if}}& {{else}}语句。
<script id="mission-dialog" type="text/x-jquery-tmpl">
<h3>${name}</h3>
<p>${description}</p>
<ul>
{{each(i,cond) conditions.data}}
<li>
<img src="${cond.image}"/>
<h4>${cond.name}</h4>
<p class="status">${cond.status.value}/${cond.status.max}</p>
</li>
{{/each}}
</ul>
</script>
但是如你所知{d}也为django模板保留{{}}。 所以django会发出无法解析它的TemplateSyntaxError。
我该如何解决这个问题?
更新
我发现了一个&lt;%raw%&gt;自定义标签(GPL)的实施从这里开始。
http://www.holovaty.com/writing/django-two-phased-rendering/
答案 0 :(得分:13)
使用templatetag
模板标记呈现括号:
{% templatetag openvariable %}each(i,cond) conditions.data{% templatetag closevariable %}
这有点繁琐,这就是为Django 1.3提出raw
模板标签的原因。
答案 1 :(得分:2)
这里提到了一些解决方案:
https://github.com/nje/jquery-tmpl/issues#issue/17 - 编辑:旧回购
https://github.com/jquery/jquery-tmpl/issues/#issue/74
我最喜欢的是{% verbatim %}
模板标签,它允许您从Django内部构建jQuery模板。
答案 2 :(得分:0)
我正在使用Django 1.3并添加
{% raw %} this should be ignored by django's template framework {% endraw %}
到我的html文件。
服务器返回:
无效的块标记:'raw'
同样在文档中,我似乎找不到您正在谈论的有关此标记的信息。
https://docs.djangoproject.com/en/1.3/ref/templates/builtins/
答案 3 :(得分:0)
这里有很多关于使用Djano模板的信息,使用icanhaz,但我认为这与JQuery模板类似。
http://tothinkornottothink.com/post/4282971041/using-jquery-templating-icanhaz-js-with-django
答案 4 :(得分:0)
如果不支持'verbatim'标记,我发现默认值很有用。 看起来像这样:
{{ some_undefined_variable|default: '....here goes the subject template....'}}
PS。对于ChicagoBoss的用户,请注意,它不支持ErlyDTL中的“verbatim”标记。