OpenERP 7用户角色的访问权限

时间:2013-04-12 08:35:48

标签: python xml openerp

我需要为我的模块添加用户,并且需要一些menuitem限制。主要是我创建了用户和经理角色。在设置 - >用户 - >创建用户 - >访问权限,我更改用户或管理员。但不影响该用户,也不显示任何菜单项。主菜单项也不显示。 我在bpl_security.xml中添加了代码,并在openerp.py文件中映射了xml文件。 是我不想要的。请查看我的代码和建议

<?xml version="1.0" ?>
<openerp>
    <data>
        <record model="ir.module.category" id="module_checkroll_category">
            <field name="name">Checkroll</field>
            <field name="description">manager-create new products</field>
            <field name="sequence">16</field>
        </record>
        <record id="group_checkroll_user" model="res.groups">
            <field name="name">Checkroll_User</field>
            <field name="category_id" ref="module_checkroll_category" />
        </record>
        <record id="group_checkroll_manager" model="res.groups">
            <field name="name">Checkroll_Manager</field>
            <field name="implied_ids" eval="[(4, ref('group_checkroll_user'))]" />
            <field name="category_id" ref="module_checkroll_category" />
            <field name="users" eval="[(4, ref('base.user_root'))]" />
        </record>
    </data>
</openerp>

我的整个代码已上传here&amp;看到它的'bpl_view.xml第705行

这里显示了我在view.xml中的相关部分

<menuitem id="menu_bpl" name="Checkroll/Registration" groups="group_checkroll_manager,group_checkroll_user" />
<menuitem id="menu_bpl_ref" name="Reference" parent="menu_bpl"
groups="group_checkroll_user" />
<menuitem id="menu_bpl_logic" name="Company Specific" parent="menu_bpl"
groups="group_checkroll_manager" />

2 个答案:

答案 0 :(得分:6)

我没有在模块中找到任何 ir.model.access.csv 作为访问权限。您必须在模块中创建ir.model.access.csv,我建议您创建一个安全文件夹并将安全相关文件放在那里

喜欢

Security
  ----ir.model.access.csv
  ----sale_security.xml

并更改 openerp .py文件,如

'安全/ sale_security.xml',     的安全/ ir.model.access.csv',

在ir.model.access.csv文件中提供如下访问权限:

id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_sale_shop,sale.shop,model_sale_shop,base.group_user,1,0,0,0
access_sale_order,sale.order,model_sale_order,base.group_sale_salesman,1,1,1,0

access_sale_shop是您访问的ID,您可以将其写为a,access_sale_shop1,access_sale_shop2等。

name是对象的名称,sale.shop是对象的名称

perm_read,perm_write,perm_create,perm_unlink用于读取,写入,创建,取消链接它给你1表示这个组有权限,0表示没有权限,如果你给perm_create meand用户可以在thi对象中创建,希望这个为你明白

model_id是模型的id,这里的model_sale_shop在你模块中的对象上添加模型它将是这样的:对于这个对象 bpl.deduction.estate.data 它将是 model_bpl_deduction_estate_data < /强>

答案 1 :(得分:0)

我认为,您还需要检查我们为每个对象分配的访问权限,例如谁可以管理该对象的哪些操作(编辑/删除/创建/读取)。 我可以从yourside看到两个组:Checkroll_User和Checkroll_Manager,但您是否为这些组分配了对象的任何访问权限?