"{%}"在HTML中有什么作用?

7
我已经按照官方文档给我的应用程序添加了Django信息。官方文档中提到,我需要在模板中添加类似以下的内容:
{% if messages %}
<ul class="messages">
    {% for message in messages %}
    <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
    {% endfor %}
</ul>
{% endif %}

我不知道百分号的作用,它们并不是实际的 HTML 标签,对吗?

3
我不知道为什么人们会对这个进行负评 :) - GrvTyagi
哈哈,我也是一样,但还是谢谢你的回答!我学了Django,但我想我应该更仔细地阅读文档。 - Amon
3
它被踩是因为很难理解原帖作者怎么能在Django项目中走这么远却不知道什么是Django模板标签。 - Daniel Roseman
1
也许用户可以从现有的项目中学习:),也许我错了,但如果您能帮忙就好了。 - GrvTyagi
@DanielRoseman 不是很准确,这不在主要教程中涵盖。Django消息在设计网站时并不是必需的。当时我更关注编程方面,一个月后回来想要显示消息时,我不确定它们的作用。 - Amon
显示剩余4条评论
1个回答

6
这是一种在HTML页面中使用的模板引擎语法,当您使用上下文变量渲染视图HTML并返回基本的HTML响应时,Django会编译它。
对于您的情况,您的消息将成为上下文变量,Django引擎将像这样进行编译:
如果消息不为空,则内部HTML可见。
文档链接:https://docs.djangoproject.com/en/1.7/topics/templates/

2
Django不包括Jinja。Jinja是一个独立的项目,旨在使Django模板语法可以独立于Django使用。 - Ignacio Vazquez-Abrams

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接