【问题标题】:Odoo11 - Restrict user assignment to project team membersOdoo11 - 将用户分配限制为项目团队成员
【发布时间】:2018-07-12 16:36:51
【问题描述】:

我下载了 odoo 11 社区版的 .exe 文件,将其安装在 Windows 服务器上并配置了规则,该项目只能由作为团队成员分配到该项目的用户看到。 效果很好!

现在,在一项任务中,我想限制任务“分配给”下拉列表中的选项:在下拉列表中,我只想查看实际分配给该项目的用户。目前我可以看到所有现有用户,并且可以将任务分配给他们中的任何一个。

在表单视图中,我尝试通过添加 domain 属性来限制列表如下:

<field name="user_id" class="o_task_user_field" domain="('user_id','in', [project.members])" />

这会在保存时出错。 属性中使用的字段“项目”必须出现在视图中,但缺少


更新:2.方法:

我尝试更新模型 project.task 中的字段 user_id 并将 domain 设置如下:

('project_id.members','in', [user.id])

但我得到了错误(从德语翻译):您不能在基本字段中进行更改!


如何限制下拉菜单中的选项(无需更改代码,因为我没有从 github 分叉的代码)?

任何帮助表示赞赏! 谢谢

【问题讨论】:

    标签: project odoo-11


    【解决方案1】:

    为此,您只需要更新一个 onchange 并在该添加域中。无需从 xml 添加。默认情况下有onchange_projectmethod。你只需继承它并添加一行..

    result.update({'domain':{'user_id':[('project_ids','in',project_id)]}})
    

    【讨论】:

    • 您好,Keval,感谢您的回复。我在 Windows 服务器上安装了 Odoo,但不确定如何通过网站添加 python 代码?我相信我可能需要从 github 下载代码,在那里更改 python 代码,然后重建整个应用程序。我希望有一个更简单的解决方案。你能为我指出正确的方向吗?谢谢,赫伯特
    • 无需通过网站更改代码。正如您所说,您安装了 odoo 那么您是否为此克隆了 github 分支?如果是,那么您可以直接从该分支代码编辑它。
    • 不,我没有从 github 克隆 repo。刚刚从here下载了exe文件并安装了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 2016-06-06
    • 2021-10-09
    相关资源
    最近更新 更多