我尝试调用sort()方法和sorted()函数,但它不起作用。
调用排序()函数:
<t t-set='data' t-value="{4: 'd', 3: 'c', 'b': 2, 'a': 1}"/>
<t t-set="list_key" t-value="sorted(list(data.keys()))"/>
<t t-esc="list_key"/>但它给了我错误,就像:
呈现编译AST TypeError的错误:“NoneType”对象不可调用
调用sort()方法:
<t t-set='data' t-value="{4: 'd', 3: 'c', 'b': 2, 'a': 1}"/>
<t t-set="list_key" t-value="list(data.keys()).sort()"/>
<t t-esc="list_key"/>它不会产生错误,但是当我试图访问list_key的一个元素时,会得到以下错误:
呈现编译AST TypeError的错误:“NoneType”对象不可订阅
你能帮帮我吗?谢谢你。
发布于 2019-03-18 11:20:29
我不知道为什么您需要在模型定义中创建排序方法,因为sorted方法已经提供用于记录集中,也可以在qweb中使用。例如,这一行摘自odoo社区代码:
<t t-foreach="move.move_line_ids.sorted(key=lambda ml: ml.location_id.id)" t-as="ml">有关odoo sorted方法的更多信息,您可以阅读官方的文档。
https://stackoverflow.com/questions/55206023
复制相似问题