如何在视图查询上创建一个one2many字段在相关表上查询2个或更多字段

时间:2020-08-27 15:00:55

标签: odoo odoo-12 qweb

我希望视图partner_id上的字段project.task.form.quick_create同时查询res.partner.nameres.partner.company_name

  • filter_domain不起作用;
  • 域仅适用于固定值;

这是视图project.task.form.quick_create

<form>
    <group>
        <field name="name" string="Task Title"/>
        <field name="partner_id" options="{'no_quick_create': True, 'no_create_edit' : True}" 
          filter_domain="['|', ('company_name','ilike',self),('name','ilike',self)]"/>
        <field name="user_id" options="{'no_open': True,'no_create': True}" eval="False" />
    </group>
</form>

1 个答案:

答案 0 :(得分:1)

不,它不可能按照您想要的方式去做。 正如@CharifDZ指出的那样,您将不得不覆盖name_search。
这就是你应该怎么做

class ResPartner(models.Model):
  _name = 'res.partner'
  _inherit = 'res.partner'

  @api.model
  def name_search(self, name, args=None, operator='ilike', limit=100):
    args = args or []
    if name:
       args += ['|', ('name', 'ilike', name), ('company_name', 'ilike', name)]
       name = ''
    return super(ResPartner, self).name_search(name=name, args=args, operator=operator, limit=limit)