我创建了一个新的小组,该小组的个人身份是为了限制某些用户创建新产品。所以我开发了一个自定义模块来满足我的需求。在安装模块并将用户添加到组中之后,我与该用户建立联系以验证他是否能够添加新产品,而我发现他可以。任何机构都可以帮助我验证我的代码是否正确,因为我不确定这是否是创建新组并将用户添加到其中的正确方法
security.xml
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="res.groups" id="your_group">
<field name="name">Group of users who cannot create new products</field>
</record>
</data>
product.py
# -*- coding: utf-8 -*-
from openerp import fields,models,api
from openerp import tools
import openerp.addons.decimal_precision as dp
from openerp.tools.translate import _
class product_product(models.Model):
_inherit = "product.product"
@api.model
def create(self, vals):
if self.env.user.has_group('yor_module.your_group'):
raise Warning(
_('Sorry, you are not allowed to create new products.'),
)
else:
return super(product_product, self).create(vals)
答案 0 :(得分:0)
您添加的组将不起作用,因为您不想授予其产品创建访问权限的用户在Sales中拥有“经理”权限。那是最高的权利。因此,尽管您已经创建了组,但是它无法正常工作。