我正在开发的Python网站中使用Chameleon。这是一段代码:
<option tal:repeat="option options"
value="${option.isoformat()}"
selected="${if request.get_param('%s%d%s' %(day, row, type))==option.isoformat(): 'selected'}">
${int(option.strftime('%I'))}${option.strftime(':%M%p')}
</option>
但由于某种原因,我总是遇到语法错误:
ExpressionError: invalid syntax
- String: "if request.get_param('%s%d%s' %(day, row, type))==option.isoformat(): 'selected'"
- Filename: /Users/theron/Sites/python/restaurateur/views/settings/hours.pt
我看不出我做错了什么。有什么帮助吗?
答案 0 :(得分:1)
好吧,我想我弄清楚了:它是无效的,因为没有else语句,所以当if语句求值为false时没有输出。我用以下内容修复了它:
<option tal:repeat="option options"
value="${option.isoformat()}"
tal:attributes="selected 'selected' if request.get_param('%s%d%s' %(day, row,
type))==option.isoformat() else None">
${int(option.strftime('%I'))}${option.strftime(':%M%p')}
</option>