如何解决如何在odoo中的特定动作中替换记录名称?
我有一个称为患者的模型,其中包含所有患者数据, 我需要为打开模型的某些用户组添加另一个菜单,但没有诸如名称之类的任何附加数据,但是默认情况下,它是模型的_rec_name, 如何在特定操作下将患者的姓名隐藏为另一个字段或静态字符串(例如“患者”)
任何帮助将不胜感激...
解决方法
基本上,您需要将数据分成两个或多个模型。 然后使用委托继承。然后,您可以更轻松地区分敏感信息和不敏感信息。
在此处阅读有关此内容的更多信息: https://www.odoo.com/documentation/14.0/reference/orm.html#inheritance-and-extension
您可以在此处看到示例,hr.employee
有3种模型:基本模型,公共模型和私有模型。
https://github.com/odoo/odoo/tree/14.0/addons/hr/models
,我通过重写name_get方法来做到这一点,并添加新条件,如果我在新菜单中使用该模型(该新菜单仅针对新组显示),它将返回另一个名称
def name_get(self):
result = []
if not self.env.user.has_group('pl_analytic.group_pl_analytic'):
for patient in self:
name = patient.full_name
result.append((patient.id,name))
else:
for patient in self:
result.append((patient.id,patient.identification_code))
return result
感谢所有人
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。