如何解决在项目团队成员中应用域过滤器
我在DMS文件模型中有字段:-
project_id = fields.Many2one('project.project',string="Project")
project_members_ids = fields.Many2many(related="project_id.members_ids",string="Members")
project_task_id = fields.Many2one('project.task',string="Project Partwork")
project_task_members_ids =
fields.Many2many(related="project_task_id.members_ids",string="Partwork Members")
我在项目模型中:
members_ids = fields.Many2many('res.users','work_user_rel','work_id','uid','Work Members',help="""Work's Team.""")
我已经在DMS模块中确保了安全性:-与项目模块相关的成员只能访问他的文件。
<record id="rule_security_project_user_file" model="ir.rule">
<field name="name">Records based Project of file</field>
<field name="model_id" ref="model_muk_dms_file"/>
<field eval="1" name="perm_read"/>
<field eval="1" name="perm_create"/>
<field eval="1" name="perm_write"/>
<field eval="0" name="perm_unlink"/>
<field name="domain_force">['|','|',('project_task_members_ids','=',False),('project_task_members_ids.user_ids','in',[user.id]),('project_members_ids',('project_members_ids.user_ids',[user.id])]</field>
<field eval="[(4,ref('gwssb_dms.group_dms_user'))]" name="groups"/>
</record>
但是,如果我将域过滤器设置为“ Global”,则可以正常工作,但不能在DMS USer组中使用。而且,域过滤器不允许其他成员创建与项目团队成员无关的任何新记录。
我不知道我在做什么错,或者这是odoo中的错误。任何从事安全工作的人。请帮帮我。等待您的答复。预先感谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。