代码之家  ›  专栏  ›  技术社区  ›  pedrommuller

odoo 12中树视图上的计算字段

  •  0
  • pedrommuller  · 技术社区  · 5 年前

    我试图计算一个要在树视图中显示的值,问题是我的私有函数永远不会被执行,也不会为我的计算字段设置值。

    我简化了以下代码:

    class ProjectProject(models.Model):
        _inherit = "project.project"
        assigned = fields.Char(string='Assigned multi', compute='_roles_assigned', store=False)
    
        @api.multi
        @api.depends('task_ids')
        def _roles_assigned(self):
            #do dome calculations
            assigned = ' test of 1' #'0 / {total}'.format(total=total)
            return assigned
    

    tree view

    如图所示,该值始终为空

    0 回复  |  直到 5 年前
        1
  •  5
  •   Bhavesh Odedra    5 年前

    当我们在树视图中显示计算字段时,它将设置多个记录。因此,我们必须为每个记录集设置值。

    尝试使用以下代码:

    @api.multi
    def _roles_assigned(self):
        #do dome calculations
        for record in self:
            assigned = ' test of 1' #'0 / {total}'.format(total=total)
            record.assigned = assigned
    
        2
  •  2
  •   Juhil Somaiya    5 年前

    您必须迭代记录并为其分配一些值,请检查下面的代码。

    @api.multi
    def _roles_assigned(self):
        for rec in self:
            rec.assigned = 'assign your value here'