This question has been flagged
4 Replies
5735 Views

I have a button in (stock_picking form) that I want to hide from a certain user (I know the DB user_id but I realize that would be ugly). I tried with the invisible attribute but I dont have the user_id in the form. 


Do you have a recommended way of achieving this? Perhaps adding this user to a usergroup with a specific name, and then filtering out this group somehow in the view. 

Avatar
Discard
Best Answer

Dear Adi

Try this


    @api.model
    def fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False):
        res=super(PickingClass, self).fields_view_get(view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu)
        if view_type != 'search' and not(self.env.user.has_group('YourModule.YourGroup')):
                root = etree.fromstring(res['arch'])
                root.set('create', 'false')
                res['arch'] = etree.tostring(root)
        return res


I hope I helped You...

Avatar
Discard
Best Answer

Hello, 

you can achieve this either by fields_view_get or using the security rights.

for the security group, make one security group and assign that group on the button. then whom you assign that group, only that user can see the button.

Avatar
Discard