Django 中的 {% %} 和 {{ }}

2024-02-22

我正在学习 Django,遇到了 2 组特殊字符,我以前从未见过这样使用过。我可以猜测它们在示例中的用途,但不了解它们的范围。

他们是:

  • {% if registered %}
  • {{ user_form.as_p }}

我添加了if registered and user_form.as_p在上下文中。我只关心{% %} and {{ }}它的一部分。

  • 这些仅在 Django 中使用还是也在 Python 中使用?
  • 各自的含义是什么?
  • 还有其他类似的人物设定吗?

这些是出现在 django 模板中的特殊标记。您可以在以下位置阅读有关语法的更多信息django 模板语言参考 https://docs.djangoproject.com/en/1.9/ref/templates/language/在文档中。

{{ foo }}- 这是模板中变量的占位符foo从视图传递到模板。

{% %}- 当文本被这些分隔符包围时,意味着正在运行一些特殊的函数或代码,其结果将放置在这里。当内部文本不是从视图传递到模板,而是正在执行的模板语言本身的函数或功能(如 for 循环或 if 条件)时使用它。您可以创建自己的模板语言扩展,称为模板tags.

{{ foo|something }}- 这是您可能遇到的另一种语法。这|something is a 模板过滤器。通常用于转换左边项的结果|象征。例如{{ foo|title }}.

您可以阅读有关标签和过滤器的更多信息,它们被称为模板内置函数 https://docs.djangoproject.com/en/1.9/ref/templates/builtins/在文档中。

这种语法并不是 django 独有的 - Python 中的许多其他模板语言(以及 Python 之外的一些)都采用了类似的语法。

Python 语言没有相同的语法,但它确实有这样的概念:字符串模板 https://docs.python.org/2/library/string.html#template-strings这是模板引擎的一个非常简化的版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django 中的 {% %} 和 {{ }} 的相关文章

随机推荐