- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 OpenERP 复制感到疯狂,如果我复制员工目录中的用户,它会复制所有内容(系统的每个用户),如果我复制一个组,它只会复制一些内容,显然它不会创建副本。 ..如果我复制菜单,它不会复制子菜单选项。
WTF 会在“幕后”重复做事吗?副本和副本一样吗?它是否创建一个指向同一对象的新引用?是浅拷贝还是深拷贝?
我使用的是 OpenERP 7 LTS。
最佳答案
重复的菜单调用 OpenERP copy
方法,该方法默认实现为浅拷贝,但 one2many
除外。关系。
浅复制表示创建记录的新副本,并将所有字段值尽可能复制为引用。例如,如果您复制一名员工,则复制员工的部门将简单地设置为与被复制员工相同的部门,系统将不会创建该部门的副本。
对于 one2many
关系(通常是连接父记录与其子记录的关系,如发票与其行之间的关系),子记录也会重复,因为原始记录不能从他们原来的 parent 那里被剥夺。
当 one2many
关系将记录连接到并非真正其子项的“相关记录”时,此默认行为可能会导致不可预见的副作用:例如 one2many
关系可以链接员工到她的时间表条目,但当员工重复时,这些条目绝对不应该重复。
因此,OpenERP的各种对象模型可以在复制操作期间实现额外的逻辑,并显式关闭不包含真实“的one2many”关系的复制Children”,以及更改任何复制的值(例如在记录名称中附加“(副本)”)。
如果您在仅使用标准 OpenERP 模块复制记录时看到不正确的行为,则可能是一个错误,应在 official bugtracker 上报告。 。如果您使用额外的模块,请确保它们不会在某些模型上添加 one2many
字段,而不相应地覆盖 copy
方法。
PS:如果您复制“员工目录”中的记录,您实际上是在复制员工(人力资源资源),而不是用户(具有登录访问权限的用户帐户)。这些在 OpenERP 中是独立的概念,因为有些员工可能不需要登录(没有用户帐户),而有些用户可能不是员工(例如承包商或系统帐户)。
更新:a bug目前OpenERP 7.0中存在一个问题,在复制用户时会导致相关员工的无效复制,在复制员工时会导致下属的类似复制。这个错误说明了当模块无法正确处理它们定义的 one2many 关系的重复时会发生什么情况。
关于odoo - 当我按下“重复”按钮时,到底会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20335480/
这对你们来说可能很简单,但由于我是java新手,所以我想知道实际上什么是 接下来的部分会发生什么? if (args.length > 0) { file = args[0]; } publi
在我的 View Controller 中,我将 UITapGestureRecognizer 添加到 self.view。我在 self.view 之上添加了一个小 View 。当我点击小 View
我今天尝试从 Obj-C 开始并转到 Swift,我正在阅读文档。我试图在 Swift 中创建一个简单的 IBOutlet,但它不断给我这些错误。 View Controller 没有初始化器 req
我正在尝试使用 VIM 完成(字典和当前缓冲区),但我遇到了问题?和 !在方法名称的末尾。我能以某种方式向 vim 解释方法名称(基本上是单词)最后只能有它,而且只有一个,即 method_name
我是一名优秀的程序员,十分优秀!