Odoo 10: группы безопасности не работают на кнопке редактирования / создания - PullRequest
0 голосов
/ 10 октября 2018

Цель : чтобы появилась кнопка Редактировать / Создать только для группы пользователей: Менеджер

Имя модуля : Simcard

Название модели : simcard_simcard

мой csv-файл:

id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
demo_admin, Model admin access,model_simcard_simcard,simcard.group_manager,1,1,1,1
demo_user, Model user access,model_simcard_simcard,simcard.group_user,0,0,0,0

Мои user_groups.xml:

<?xml version="1.0" encoding="utf-8"?>
<odoo>
  <data>
    <record model="ir.module.category" id="module_management">
      <field name="name">Simcard</field>
      <field name="description">User access level for this module</field>
      <field name="sequence">3</field>
    </record>

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

    <record id="group_manager" model="res.groups">
      <field name="name">Manager</field>
      <field name="implied_ids" eval="[(4, ref('simcard.group_user'))]"/>
      <field name="category_id" ref="simcard.module_management"/>
    </record>
</data>
</odoo>

Мои просмотры.xml:

<record id="remove_edit" model="ir.ui.view">
    <field name="name">remove.edit</field>
    <field name="model">simcard.simcard</field>
    <field name="inherit_id" ref="simcard.view_sim_form"/>
    <!-- <field name="groups_id" eval="[(4, [ref('simcard.group_manager')])]"/> -->
    <field name="arch" type="xml">
        <xpath expr="//form" position="attributes">
            <attribute name="edit">true</attribute>
            <attribute name="groups">simcard.group_manager</attribute>

        </xpath>
    </field>
    </record>

Эта кнопка «Правка» по-прежнему отображается для обычных пользователей.

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Лучше решить эту проблему, используя 2 записи ir.rule, одну глобальную (будет применяться ко всем пользователям и группам без указания группы), чтобы ограничить действия создания и записи с помощью domain_force, например:

[(1,'=',1)]

И еще одна запись, связанная с группой simcard.group_manager, чтобы разрешить действия по созданию и редактированию с тем же domain_force:

[(1,'=',1)]

И удалить все эти настройки представления

0 голосов
/ 10 октября 2018

В csv в столбце model_id: id добавьте имя_модуля. перед:

simcard.model_simcard_simcard
...