odoo14怎么设置创建项目费用明细时当前登陆人id必须=md_id才可以创建
时间: 2024-09-20 20:06:22 浏览: 63
在Odoo 14中,为了限制只有当前登录用户ID等于`md_id`时才能创建项目费用明细,你可以通过修改模块的模型自定义(model customization)和权限控制来实现这一功能。以下是基本步骤:
1. **检查权限**:
首先,确保已经有一个合适的权限字段(如`create`),它对应于创建操作,并关联到项目的管理权限。例如,如果你有一个`project_expense_line`模型,可能已经有了`project.expense_line.write`权限。
2. **修改视图**:
打开对应的`project_expense_line`记录的编辑视图文件,通常位于`views/project_expense_line.xml`。找到创建行的部分,比如`<form>...</form>`标签内。在此处添加条件判断,只允许登录用户的ID匹配`md_id`属性才能提交新建数据。
示例Python表达式可以这样写:
```xml
<field name="create" attrs="{'invisible': [('create_uid', '!=', active_user.id)]}">
<!-- ...其他表单元素 -->
</field>
```
这里,`active_user`代表当前登录用户,`create_uid`则是费用明细的创建者ID。
3. **保存并重启应用**:
修改完成后,记得保存你的修改并重启Odoo应用使其生效。
4. **测试验证**:
登录不同的用户账户,尝试创建费用明细,确认只有拥有相应`md_id`的用户才能成功创建。
阅读全文
相关推荐
















