是什么导致了 Genshi 的模板语法错误?
Genshi 模板引发以下错误:
TemplateSyntaxError:
“choose”
指令的表达式“${item.error}”
中的语法无效
错误指定的模板代码部分如下 ( 'feed' 是传递给模板的字典列表):
<item py:for="item in feed">
<py:choose error="${item.error}">
<py:when error="0">
<title>${item.something}</title>
</py:when>
<py:otherwise>
<title>${item.something}</title>
</py:otherwise>
</py:choose>
</item>
基本上,item.error 包含 '0'
或 '1'
我想要基于此的输出。 我不确定错误在哪里 - 感谢任何帮助。 谢谢。
A Genshi template raises the following error:
TemplateSyntaxError: invalid syntax in expression
"${item.error}"
of"choose"
directive
The part of the template code that the error specifies is the following ('feed' is a list of dictionary which is passed to the template):
<item py:for="item in feed">
<py:choose error="${item.error}">
<py:when error="0">
<title>${item.something}</title>
</py:when>
<py:otherwise>
<title>${item.something}</title>
</py:otherwise>
</py:choose>
</item>
Basically, item.error holds either a '0'
or a '1'
and I want the output based on that. I am not sure where the error is - any help is appreciated. Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
文档可能无法做到这一点清楚,但是该属性需要被称为
test
(就像在他们的示例中一样)而不是error
。The docs perhaps don't make this clear, but the attribute needs to be called
test
(as it is in their examples) instead oferror
.我从未使用过 Genshi,但根据我找到的文档,您似乎正在尝试在模板指令参数中使用内联 Python 表达式语法,这似乎是不必要的。 试试这个:
I've never used Genshi, but based on the documentation I found, it looks like you're trying to use the inline Python expression syntax inside a templates directives argument, which seems to be unneccesary. Try this instead: