擅长:python、mysql、java
<p>我在Django文档中找到了我自己问题的答案:</p>
<blockquote>
<p><a href="https://docs.djangoproject.com/en/dev/ref/templates/api/#limitations-with-string-literals" rel="nofollow">https://docs.djangoproject.com/en/dev/ref/templates/api/#limitations-with-string-literals</a></p>
<p>“Django’s template language has no way to escape the characters used for its own syntax.”</p>
</blockquote>
<p>我已经解决了这个问题,用视图函数替换了定制的<code>render_[app]_section</code>templatetags,这些函数接受一个请求对象并返回一个字符串。例如,下面是公文包应用程序的<code>render_section</code>函数:</p>
<pre><code>def render_section(request)
projects = Project.objects.filter(featured=True)
return render_to_string("portfolio/section.html", {
'projects': projects,
})
</code></pre>
<p>我已经创建了一个定制的templatetag(<code>render</code>),它知道如何调用单个应用程序的<code>render_section</code>视图。以下是我用来呈现主页的模板:</p>
<pre><code>{% for section in sections %}
{% render section %}
{% endfor %}
</code></pre>