在树形视图中对检查的记录进行计数和求和,然后在表单字段中设置该结果,可以通过使用Odoo 8中的计算字段来实现。
首先,你需要在Odoo 8中创建一个新的计算字段。计算字段是一个虚拟的字段,它的值是根据其他字段的值动态计算得出的。
下面是一个示例代码,演示如何在Odoo 8中创建一个计算字段来对树形视图中的记录进行计数和求和:
from openerp import models, fields, api
class MyModel(models.Model):
_name = 'my.model'
# 假设有一个名为'my_field'的字段,你想要对它的值进行计数和求和
my_field = fields.Integer(string="My Field")
count = fields.Integer(string="Count", compute="_compute_count")
total = fields.Integer(string="Total", compute="_compute_total")
@api.depends('my_field')
def _compute_count(self):
# 计算记录的数量
for record in self:
record.count = len(record.my_field)
@api.depends('my_field')
def _compute_total(self):
# 对记录的值进行求和
for record in self:
record.total = sum(record.my_field)
在上面的代码中,我们创建了两个计算字段count
和total
,并使用@api.depends
装饰器来定义它们的计算方法_compute_count
和_compute_total
。@api.depends
装饰器用于指定计算字段所依赖的字段。
接下来,你可以将这些字段添加到表单视图中,以在表单字段中显示计算结果。
例如,在Odoo 8的XML视图中,你可以这样添加这些字段:
<record model="ir.ui.view" id="my_model_form_view">
<field name="name">my.model.form.view</field>
<field name="model">my.model</field>
<field name="arch" type="xml">
<form>
<group>
<field name="my_field"/>
<field name="count" readonly="1"/>
<field name="total" readonly="1"/>
</group>
</form>
</field>
</record>
在上面的XML代码中,我们在表单视图中添加了count
和total
字段,将它们设为只读以防止用户编辑这些字段。
这样,当你在树形视图中创建或更新记录时,计算字段的值会根据_compute_count
和_compute_total
方法的逻辑自动更新,并在表单字段中显示结果。
在使用Odoo 8时,腾讯云的相关产品和产品介绍链接地址,可以参考腾讯云的官方文档和网站,获取更详细的信息和介绍。
领取专属 10元无门槛券
手把手带您无忧上云