有人可以解释一下这些“tal”命令在我的 html 标签中的作用吗?我了解到它们是文本属性语言命令,但不清楚它们的作用。
<div tal:condition="myvar">
Your command returns:<br><tal:block tal:content="myvar"></tal:block>
</div>
他们在评估条件吗?或占位符?请解释。
您可能希望熟悉看起来像这样的“传统”模板语言:
<?php if ($myvar) : ?>
<div>
Your command returns:<br><?php echo $myvar; ?>
</div>
<?php endif; ?>
或者:
{% if myvar %}
<div>
Your command returns:<br>{{ myvar }}
</div>
{% endif %}
或该语法的类似变体。这些语言只是简单地输出文本并提供某些控制结构,仅此而已。
TAL 是HTML 感知的,它使用 HTML 语法作为它自己语法的一部分。
<div tal:condition="myvar">
Your command returns:<br><tal:block tal:content="myvar"></tal:block>
</div>
它以与浏览器相同的方式解析 HTML,并使用 HTML 元素的属性来更改模板。在上面的示例中,div
将根据 的值显示或删除整个内容myvar
。它的作用与上面的其他两个示例相同。
优点是双重的: