查看“使用委托继承嵌入模型”的源代码
←
使用委托继承嵌入模型
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看并复制此页面的源代码:
委托继承不常用,但它可以提供非常方便的解决方案。 它通过_inherits属性(注意s)通过字典映射继承模型与字段的关系,并关联它们。 一个很好的例子是标准用户的模型,res.users; 它嵌入了一个合作伙伴模型: from odoo import models, fields <br>class User(models.Model): <br>_name = 'res.users' <br>_inherits = {'res.partner': 'partner_id'} <br>partner_id = fields.Many2one('res.partner') 使用委托继承,res.users模型嵌入继承的模型res.partner,以便在创建新的User类时,还将创建一个合作伙伴,并且对其的引用保留在User类的partner_id字段中, 它与面向对象编程中的多态性概念有一些相似之处。 <br>通过委派机制,来自继承模型和合作伙伴的所有字段都可用,就像它们是User类字段一样。 例如,合作伙伴名称和地址字段显示为User类字段,但实际上,它们存储在链接的合作伙伴模型中,不会发生数据重复。 <br>与原型继承相比,这样做的优点是不需要在几个表之间重复数据结构,例如地址。 任何需要包含地址的新模型都可以将其委派给嵌入式合作伙伴模型。 如果在合作伙伴地址字段中引入了修改,则这些修改会立即提供给嵌入它的所有模型! 注意 请注意,使用委托继承,字段是继承的,但方法不是。
返回至
使用委托继承嵌入模型
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
odoo 中文开发手册
odoo 开发参考
odoo 实施笔记
Odoo 最佳方案
关于 OdooV
Odoo FAQ
工具
链入页面
相关更改
特殊页面
页面信息
友情链接
odoo官网
odoo中文网
odoo实施