如何检查模板中是否存在字符串?

时间:2013-09-20 14:46:14

标签: python templates zope template-tal zpt

我正在向我的视图返回一个字符串body_class。我似乎无法在没有破坏它的情况下处于这样的状态:

<body tal:condition="body_class" class="${body_class}">
<body tal:condition="not body_class">

有点工作。它输出了body类,但模板的其余部分不起作用。我正在寻找一个解决方案,如果字符串存在,则放入body类,否则将其遗漏。

不知道我做错了什么。

2 个答案:

答案 0 :(得分:0)

我想你在谈论浏览器视图(BorwserView)。

如果body_class是BrowserView的一个方法,那么这样的东西应该有用:

<body tal:condition="view/body_class" class="${view/body_class}">
...
</body>
<body tal:condition="not: view/body_class">
...
</body>

答案 1 :(得分:0)

您不想在此使用tal:condition;您正在打开或关闭整个元素,包括内容。

您只想设置class属性:

<body tal:attributes="class: body_class">

这适用于空字符串,你只需要一个空的class元素;如果body_classNone,则该属性将完全省略。