使用Pyramid,我的代码如下:
class PageData:
@staticmethod
def create_data():
return [
{
'key_1A': 'info1A',
'key_2A': 'info2A',
'nested_list_A': [
{'nested_key1A': 'nested_val1A'},
{'nested_key2A': 'nested_val2A'},
],
},
{
'key_1A': 'info1B',
'key_2A': 'info2B',
'nested_list_B': [
{'nested_key1B': 'nested_val1B'},
{'nested_key2A': 'nested_val2A'},
],
},
]
我的html页面代码如下所示:
<span tal:condition="nested_key1A"> Open </span>
<span tal:condition="not nested_key1A"> Closed </span>
引用nested_key的正确语法是什么?对于tal:条件陈述?
答案 0 :(得分:0)
在试图解决这个问题时,我找到了答案......
TAL:重复 语法:tal:repeat =“name expression”
描述:评估“表达式”,如果是序列,则对序列中的每个项重复此标记和所有子项。 “name”将设置为当前迭代中项目的值,也是重复变量的名称。可以使用TAL路径访问repeat变量:repeat / name并具有以下属性:
<div tal:repeat="a nest_list_A">
<div tal:repeat="b a.nest_list_A">
<span tal:condition="b.nested_key1A">
a成为nest_list_A的赋值,例如 b成为a.nested_list_A的分配,然后将访问它们的密钥
如果键有值,则tal:condition将继续正常,否则在渲染时将跳过。