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