我在OpenERP 7中开发了一个自定义模块,我的管理员用户只能看到这个模块.
1 - 如何将普通用户访问自定义模块?
2 - 解决此问题的步骤是什么.
请举一个详细的例子.
Bha*_*dra 16
创建一个Security folder包含两个以下文件的文件.例如,
security/test_security.xml文件
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="0">
<record model="ir.module.category" id="module_category_name_test">
<field name="name">Management</field>
<field name="sequence">7</field>
</record>
<record id="group_name_test_user" model="res.groups">
<field name="name">User</field>
<field name="category_id" ref="module_category_name_test"/>
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
</record>
<record id="group_name_test_manager" model="res.groups">
<field name="name">Manager</field>
<field name="category_id" ref="module_category_name_test"/>
<field name="implied_ids" eval="[(4, ref('group_name_test_user'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
</data>
</openerp>
Run Code Online (Sandbox Code Playgroud)
执行此管理选项后,显示两个选择值,如User和Manager insetting => Users => Access Rights => Application
现在转向security/ir.model.access.csv
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
unique_id, test.name, model_test_name, group_name_test_user, 1,1,0,0
unique_id, test.name, model_test_name, group_name_test_manager, 1,1,1,1
Run Code Online (Sandbox Code Playgroud)
test.name 是一个表名.
csv文件示例,如何创建?哪里
Fields => Value => Description
id=> access_testing_for_user=> id必须是唯一的.
name=> testing.for.user=>名称是我们想要的.
model_id:id=> model_test_name=> model_id:id与model_our_class_name类似.
group_id:id=> group_name_test_user=> group_id:id是我们为User和Manager创建的上面的xml id.
perm_read => 1表示True,0表示False表示读取记录.
perm_write => 1表示True,0表示False表示写入记录.
perm_create => 1表示True,0表示False表示创建记录.
perm_unlink => 1表示True,0表示False表示删除记录.
注意
.xml and .csv必须列出这两个文件,__openerp__.py因为给出了其他视图文件.
| 归档时间: |
|
| 查看次数: |
7509 次 |
| 最近记录: |