from odoo import api, fields, models
类 ResUser(models.Model): _inherit = 'res.users'
dealer_category_ids = fields.Many2many(
string="Dealer Category Tags",
comodel_name='rgb.dealer.category',
relation='user_tag_rgb_dealer_category_rel',
)
类 ProductTemplate(models.Model): _inherit = '产品.模板'
dealer_category_ids = fields.Many2many(
string="Dealer Category Tags",
comodel_name='rgb.dealer.category',
relation='product_tag_rgb_dealer_category_rel',
)
类 ResPartner(models.Model): _inherit = 'res.partner'
dealer_category_ids = fields.Many2many(
string="Dealer Category Tags",
comodel_name='rgb.dealer.category',
relation='partner_tag_rgb_dealer_category_rel',
)
在此代码中,我想限制用户通过相互的 Dealer_category_ids 标签查看他的合作伙伴和产品。 因此让用户看到具有用户所购买的任何 Dealer_category_id 的产品 或者用户具有在产品中获取的任何dealer_category_id, 与合作伙伴类似产品相同
<record id="record_rule_product_access" model="ir.rule">
<field name="name">Product Access Rule Allow</field>
<field name="model_id" ref="product.model_product_template"/>
<field name="groups" eval="[(4, ref('group_allow_all_products'))]"/>
<field name="domain_force">[('id', '>', 0)]</field>
</record>
<record id="record_rule_product_access_restrict" model="ir.rule">
<field name="name">Product Access Rule Restrict</field>
<field name="model_id" ref="product.model_product_template"/>
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
<field name="domain_force">[('dealer_category_ids', 'in', user.dealer_category_ids.ids)]</field>
</record>
<record id="record_rule_partner_access" model="ir.rule">
<field name="name">Partner Access Rule Allow</field>
<field name="model_id" ref="base.model_res_partner"/>
<field name="groups" eval="[(4, ref('group_allow_all_products'))]"/>
<field name="domain_force">[('id', '>', 0)]</field>
</record>
<record id="record_rule_partner_access_restrict" model="ir.rule">
<field name="name">Partner Access Rule Restrict</field>
<field name="model_id" ref="base.model_res_partner"/>
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
<field name="domain_force">[('dealer_category_ids', 'in', user.dealer_category_ids.ids)]</field>
</record>
完成这些记录规则