Odoo / OpenERP:我如何将用户限制在他自己的日记条目中

时间:2017-08-18 11:04:20

标签: openerp odoo-8 odoo-10

我想限制用户,以便他只能看到自己的日记条目,只对他自己的条目进行编辑等。我该怎么做。我尝试过但无法做到这一点。

1 个答案:

答案 0 :(得分:1)

创建一个用户所属的res.group 然后,您必须在ir.model.access.csv安全文件中授予该组访问权限 现在使用属性ir.rule定义domain_force,该属性采用python编码条件,设置权限 像这样:

<record id="user_see_its_own" model="ir.rule">
    <field name="name">User can see only its own records</field>
    <field name="model_id" ref="< your_model >"/>
    <field name="groups" eval="[(4, ref('*<your_group>*'))]"/>
    <field name="perm_read" eval="1"/>
    <field name="perm_write" eval="1"/>
    <field name="perm_create" eval="1"/>
    <field name="perm_unlink" eval="0"/>
    <field name="domain_force">
        [('create_uid', '=', user.id)]
    </field>
</record>

你已经完成了。

请记住,如果您在此特定组之上有其他组,则必须使刚刚创建的ir.rule组成一个始终为真的条件。 像这样:

<record id="manager_see_all" model="ir.rule">
    <field name="name">Manager see all</field>
    <field name="model_id" ref="< your_model >"/>
    <field name="groups" eval="[(4, ref('*<your_group>*'))]"/>
    <field name="perm_read" eval="1"/>
    <field name="perm_write" eval="1"/>
    <field name="perm_create" eval="1"/>
    <field name="perm_unlink" eval="1"/>
    <field name="domain_force">
        [(1, '=', 1)]
    </field>
</record>