Inheritance 在Openerp中继承类并修改列
我正在Openerp中处理一个模块,我想从另一个模块继承一个类,但我不需要另一个类中的每一列 这是我的班级:Inheritance 在Openerp中继承类并修改列,inheritance,openerp,Inheritance,Openerp,我正在Openerp中处理一个模块,我想从另一个模块继承一个类,但我不需要另一个类中的每一列 这是我的班级: class BookingManagement(orm.Model): _name = 'booking.management' _inherit = 'res.partner.address.contact' _description = 'Booking management' _columns = { 'guests': fie
class BookingManagement(orm.Model):
_name = 'booking.management'
_inherit = 'res.partner.address.contact'
_description = 'Booking management'
_columns = {
'guests': fields.integer('Number of guests', required=True),
'check_in': fields.date('From', required=True),
'check_out': fields.date('To', required=True),
'special_requests': fields.text('Special requests')
}
这是res.partner.address.contact
假设我只需要“姓氏”、“名”、“电子邮件”和“手机”我该怎么做?
谢谢大家! 在Odoo中,有两种类型的继承可以使用。 第一个是通过设置来获得的(就像您所做的那样) 结果是两个表,原始表(res_partner_address_contact)不变,而您的表(booking_management)包含您声明的四个字段以及第一个表的ID(您也需要声明此字段) 第二个是通过声明
_name = 'res.partner.address.contact'
_inherit = 'res.partner.address.contact'
结果是表res\u partner\u address\u contact和您声明的额外字段
也就是说,你不能得到一个只有四个字段的表。这是一种全有或全无的情况。如果您需要继承
'res.partner.address.contact'
,只需使用姓氏、名、电子邮件和“手机”
就可以像您那样继承并将它们添加到xml视图中,因为您在编写时指定了'res.partner.address.contact'
如果您想要一个联系人
信息,请使用One2many
链接多个联系人或manyOne
链接一个联系人
_name = 'booking.management'
_inherit = 'res.partner.address.contact'
_name = 'res.partner.address.contact'
_inherit = 'res.partner.address.contact'