人類邏輯與OpenERP邏輯,困難時期。2記錄規則,相同的對象,相同的組,不同的域
非常簡單的想法:項目用戶應該能夠看到/讀取所有任務,但只能編輯/編寫他分配的任務。
簡單,在project.task記錄規則:
- 第1章:[( 'USER_ID',user.id '!=')],授予讀取
- 第二個規則:[(」撥款RW
不,第二條規則覆蓋第一條規則。
是我還是做真正簡單的事情真的很複雜? 我錯過了什麼嗎?
感謝
編輯:爲了澄清我的觀點是我的規則1 & 2:
<record model="ir.rule" id="project_task_user_rule">
<field name="name">Project/task: user: read others tasks</field>
<field name="model_id" ref="project.model_project_task"/>
<field name="domain_force">[('user_id','not in',[user.id])]</field>
<field name="groups" eval="[(4,ref('project.group_project_user'))]"/>
<field eval="1" name="perm_read"/>
<field eval="0" name="perm_write"/>
<field eval="0" name="perm_create"/>
<field eval="0" name="perm_unlink"/>
</record>
<record model="ir.rule" id="project_task_user_rule">
<field name="name">Project/task: user: RW rights on his tasks</field>
<field name="model_id" ref="project.model_project_task"/>
<field name="domain_force">[('user_id','=',user.id)]</field>
<field name="groups" eval="[(4,ref('project.group_project_user'))]"/>
<field eval="1" name="perm_read"/>
<field eval="1" name="perm_write"/>
<field eval="0" name="perm_create"/>
<field eval="0" name="perm_unlink"/>
</record>
在這種情況下,用戶只能看到自己的任務,並可以對其進行修改。 如果我把第二條規則放在第一條規則上,用戶可以看到所有的任務,但不能編輯任何,不屬於他自己的。
如果是這樣的話,爲什麼在我的情況下,用戶只能看到他的任務有正確的權限,如果我把第二條規則放在XML中的第一條規則上,那麼他能夠看到所有的任務,但不能夠寫任何東西,既不是他自己的任務? – PiTyFox
順便說一句,在你的例子中,你確實有兩個不同的組和全局規則。就我而言,這兩條規則適用於同一個project.group_project_user。 – PiTyFox