odoo12创建用户时赋予默认权限组

老规矩的格式,先说遇到的问题。新建用户的时候没有自动选上我新建立的权限组,如下图:在这里插入图片描述
但是需求是新建用户的时候默认选择权限组

失败的解决方案一

获取所有的权限group_id,创建用户的时候给group_ids值,如下图
在这里插入图片描述
但是这样创建会默认为不是内部用户

失败的解决方案二

先创建用户,再修改group_ids,这样的方式也是会默认为不是内部用户

成功的解决方案
查找创建res.user的源码,发现创建用户时默认给了权限,从此处着手,

发现默认给了group_ids

    groups_id = fields.Many2many('res.groups', 'res_groups_users_rel', 'uid', 'gid', string='Groups', default=_default_groups)

查看_default_groups返回

    def _default_groups(self):
        default_user = self.env.ref('base.default_user', raise_if_not_found=False)
        return (default_user or self.env['res.users']).sudo().groups_id

是这样给base.default_user添加记录的

       <record id="base.default_user" model="res.users">
            <field name="groups_id" eval="[(4,ref('group_users_customer360man'))]"/>
        </record>

在这里插入图片描述
但是这得重新开一个数据库才有效。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值