콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
2 답글
6199 화면

Hello, I have a problem with my M2M fields. When we modify one, the other is modified with the new values of the first one.

crm_lead.py :

class Lead(models.Model):
    _inherit = 'crm.lead'
    business_provider = fields.Many2one(comodel_name='res.partner', string='Business provider', domain='["|",("est_consultant_externe","=",True),("user_ids","!=",False),("user_ids.share", "=",False)]')
    internal_consultant_ids = fields.Many2many(comodel_name='res.partner', string='Internal consultant', domain='[("user_ids","!=",False),("user_ids.share", "=",False)]')
    external_consultant_ids = fields.Many2many(comodel_name='res.partner', string='External consultant', domain='[("est_consultant_externe","=",True)]')

crm_lead_view_form.xml :

<odoo>
  <data>
    <!-- crm.lead inherit form view -->
    <record id="lgp_crm_lead_inherit_view_form" model="ir.ui.view">
      <field name="name">lgp.crm.lead.inherit.view.form</field>
      <field name="model">crm.lead</field>
      <field name="inherit_id" ref="crm.crm_case_form_view_oppor"/>
      <field name="arch" type="xml">
        <xpath expr="//field[@name='user_id']" position="after">
          <field name="apporteur_affaire"/>
          <field name="consultant_interne_ids" widget="many2many_tags"/>
          <field name="consultant_externe_ids" widget="many2many_tags"/>
        </xpath>
      </field>
    </record>
  </data>
</odoo>

How can I resolve this problem, please ?

아바타
취소
베스트 답변

Hi,

in your many2many explicitly specify the relation and columns. E.g.:

internal_consultant_ids = fields.Many2many(
    comodel_name='res.partner',
    "crm_lead_res_partner_int_rel",
    "crm_lead_int_id",
    "res_partner_int_id",
   string='Internal consultant',
    domain='[("user_ids","!=",False),("user_ids.share", "=",False)]'
)
external_consultant_ids = fields.Many2many(
    comodel_name='res.partner',
    "crm_lead_res_partner_rel_ext",
    "crm_lead_ext_id",
    "res_partner_ext_id",
    string='External consultant',
    domain='[("est_consultant_externe","=",True)]'
)


Have also a look at the documentation: https://www.odoo.com/documentation/12.0/reference/orm.html#relational-fields

아바타
취소
작성자

It work, thank you.

베스트 답변

Hello Valentin,

Here you didn't give any relational table name, so system will create one table with combination of two table names. if you give many2many relation with same table but multiple fields means the system will refer single relational table. So you have to pass different relational table for each many2many field.

아바타
취소
관련 게시물 답글 화면 활동
1
11월 19
5253
2
6월 20
11515
0
9월 24
1138
2
12월 19
6600
2
9월 18
9737