[英]How to return a dictionary using field function in Odoo
我的现场功能出现错误。 在我的函数中,我想从我的变量total
返回一个浮点值。 而且我已经搜索过了,并且在这里找到了答案,但我仍然不明白其解释。 这是我的错误。
ValueError: dictionary update sequence element #0 has length 1; 2 is required
这是我的代码。
@api.multi
@api.depends('total_eec', 'total_tec')
def _consumption_actual_value(self):
res = {}
total = 0.0
for i in self:
total = i.total_eec + i.total_tec
res[i.id] = total
return res
_columns = {'consumption_actual': fields.function(_consumption_actual_value, string='Consumption (kWh) Actual'), # TEC + EEC}
请帮忙。
您已经混合了这两种api,使用旧api声明了字段,并使用新api编写了函数。 您应该尝试遵循。
@api.multi
@api.depends('total_eec', 'total_tec')
def _consumption_actual_value(self):
for i in self:
total = i.total_eec + i.total_tec
i.consumption_actual = total or 0.0
consumption_actual = fields.Float(compute=_consumption_actual_value, string='Consumption (kWh) Actual')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.