Belajar Odoo: Inherit dan Override Onchange Method

Contoh kasus: ketika field “tipe kendaraan” berubah, selain mengubah “tempat parkir” maka akan mengubah “nominal parkir” juga.
Model utama:
class NamaModel(model.Models):
_name = 'nama.model'
_description = 'Deskripsi Model'
type = fields.Selection([
('motor', 'Motor'),
('mobil', 'Mobil'),
], string='Tipe Kendaraan')
tempat = fields.Selection([
('lapangan_a', 'Lapangan A'),
('lapangan_b', 'Lapangan B'),
], string='Tempat Parkir')
# Onchange utama
@api.onchange('type')
def _onchange_type(self):
for rec in self:
rec.tempat = 'lapangan_a' if rec.type == 'motor' else 'lapangan_b'Inherit model dan override method:
class NamaModel(model.Models):
_inherit = 'nama.model'
# Tambahkan field parkir
parkir = fields.Float('Nominal Parkir')
# Override method
@api.onchange('type')
def _onchange_type(self):
# Panggil method super() untuk memanggil method utama
super()._onchange_type()
# Masukan yang ingin ditambahkan
for rec in self:
rec.parkir = 5000 if rec.type == 'mobil' else 2000