2017-10-13 120 views
2

我继承了project.project模块,我在其中添加了多个Many2many字段:'买家','卖家','联系人'等。 所有与res。伙伴。知道何时向其中一个字段添加多个记录,例如添加一些买家。这些买家会自动填写卖家,联系方式。Odoo在单个模型上有多个many2many或One2many字段

任何想法,我怎么能避免这种情况,我明白为什么会这样,因为many2many创建一个表PROJECT_ID和res_partner_id,不知道wheither它从卖方,买方或联系人场创建。

在此先感谢。

回答

4

您是否为Many2Many字段指定了表名?与属性“关系”,因为如果你通过所有的时间相同的两个相关的字段名称。该表在默认情况下始终以相同的名称创建。

解说:

你的情况,你有

sellers_ids = fields.Many2many(
    comodel_name='res.partner',column1='partner_id', column2='project_id', 
) 

contact_ids = fields.Many2many(
    comodel_name='res.partner',column1='partner_id', column2='project_id', 
) 

Odoo将使用相同的名称创建两个表。 “partner_id_project_id_rel”。在您创建一个Many2many记录的时刻,同一张表将会更新。

但是,如果您指定关系名称。将创建两个名称不同的表。喜欢这个。

sellers_ids = fields.Many2many(relation='sellers_project_rel', 
    comodel_name='res.partner',column1='partner_id', column2='project_id', 
) 

contact_ids = fields.Many2many(relation='contact_project_rel', 
    comodel_name='res.partner',column1='partner_id', column2='project_id', 
) 
相关问题