Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
3 Antworten
21453 Ansichten

I created a new group via XML for access rights management

        <record model="res.groups" id="group_no_open_procurement">
            <field name="name">Only Tree view for procurement</field>
        </record>

I need to enable this group for all the users by code itself and not manually changing @ User window.  How should I proceed?

 

Avatar
Verwerfen
Beste Antwort

Add your new group to the inherited_ids of base.group_user.

Either in the web client, or in via your security xml file:

<record id="base.group_user" model="res.groups">
                 <field name="name">Employee</field>
                 <field name="users" eval="[(4, ref('base.user_root'))]"/>
                 <field name="implied_ids" eval="[(4, ref('group_no_open_procurement'))]"></field>
</record>

This might be easier and adds your group to all existing users aswell (not just new ones), but I think prakashs suggestion is the cleaner way.

 

Regards.

Avatar
Verwerfen

Thanks, It's working me. +1

Beste Antwort

In the Users Default Group "Employee" (ID of the group group_user) and "Contact Creatation" (ID of the group group_partner_manager) Enable to creating new user.

Code: addons\base\res\res_users.py

    def _get_group(self,cr, uid, context=None):
        dataobj = self.pool.get('ir.model.data')
        result = []
        try:
            dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_user')
            result.append(group_id)
            dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_partner_manager')
            result.append(group_id)

          dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'module_name', 'group_no_open_procurement')
            result.append(group_id)

        except ValueError:
            # If these groups does not exists anymore
            pass
        return result

    _defaults = {
        'groups_id': _get_group,
    }

In the custom module inherit the above default method and add highligted code creating new user it enable group_no_open_procurement group.

EDIT:-

The above code enable group for creating New user. Already created user using the code update the res_groups_users_rel many2many relation table using code or xml file.

Avatar
Verwerfen
Beste Antwort

The correct method is add to your scurity xml file. Inside the users tag

Avatar
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
10
Dez. 23
36749
0
Juni 20
3391
1
Mai 19
8034
1
Feb. 25
7735
23
Apr. 23
48332