Genshi:条件语句

8 投票
1 回答
4741 浏览
提问于 2025-04-16 06:45

我想知道在Genshi模板语言中,怎么写一个简单的if/else语句。

我找到了一些信息,这个链接似乎在说Genshi不支持if/else,但没有详细说明它支持什么。

我基本上想要的就是这样的东西:

  <py:if test="c.row.currency">
  ${c.row.currency.upper()}
  <py:else>
  ${c.row.dataset_.currency.upper()} 
  </py:if>

但是我收到的错误是“坏指令:else”。我是不是应该用py:choose来代替呢?我对怎么用它来实现if/else条件还是有点搞不清楚。

1 个回答

9

目前,在Genshi中你不能使用if else这样的结构,听说也没有计划要添加这个功能。相反,正如你提到的,可以使用py:choose。下面是如何使用py:choose来实现类似if/else的功能:

<py:choose ...>
  <py:when test="...">
    ${c.row.currency.upper()}
  </py:when>
  <py:otherwise>
   ${c.row.currency.upper()}
  </py:otherwise>
</py:choose>

撰写回答