如何存在可能存在或不存在的属性?示例复选框=“已选中”或已禁用=“已禁用”HTML属性。
涉及哪种tal:属性表达式?
答案 0 :(得分:2)
当tal:attributes
中列出的属性设置为None时,将省略该属性:
<span tal:attributes="title python:len(item['title']) < 10 and item['title'] or None">
Only a title if shorter than 10 characters.
</span>
这同样适用于不存在对象的路径表达式:
<span tal:attributes="title item/title" />
现在只有在 项目的标题键或属性时才会设置title
属性。请注意,如果item/title
解析为None
,则也会省略该属性。
来自TALES 1.4 specification, attributes
section:
如果与属性赋值关联的表达式求值为nothing,则从statement元素中删除该属性。
python None
被解释为“无”。