I have inherited res.partner model and added my own one2many fields which is shown below :
from odoo import api, fields, models
class CustomContacts(models.Model):
_inherit = "res.partner"
x_brand_ids = fields.Many2many('res.partner.line', 'x_brand_id', string="Brand Name")
x_model_ids = fields.One2many('res.partner.line', 'x_model_id', string="Model Name")
x_customer_ids = fields.One2many('res.partner.line', 'x_customer_id', string="Vehicle Details")
class CustomContactsPage(models.Model):
_name = "res.partner.line"
x_customer_id = fields.Many2one('res.partner', string="Vehicle Details")
x_brand_id = fields.Many2one('vehicle.brand', string="Brand Name")
x_model_id = fields.Many2one('vehicle.model', string="Model Name")
x_vehicle_number_id = fields.Char(string="Vehicle Number")
Its related views :
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_partner_form_inherited" model="ir.ui.view">
<field name="name">res.partner.inherited</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<xpath expr="//page[@name='internal_notes']" position="after">
<page string="Vehicle Details">
<field name="x_customer_ids">
<tree editable="bottom">
<field name="x_brand_id"/>
<field name="x_model_id"/>
<field name="x_vehicle_number_id"/>
</tree>
</field>
</page>
</xpath>
</field>
</record>
</odoo>
Now i have inherited sale.order model & added 3 fields in it :
from odoo import api, fields, models
class CustomSaleOrder(models.Model):
_inherit = "sale.order"
vehicle_brand = fields.Char(string='Vehicle Brand')
vehicle_model = fields.Char(string='Vehicle Model')
vehicle_number = fields.Char(string='Vehicle Number')
Its related views :
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="sale_order_inherited" model="ir.ui.view">
<field name="name">sale.order.inherited</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='partner_id']" position="after">
<field name="vehicle_brand"/><field name="vehicle_model"/><field name="vehicle_number"/>
</xpath>
</field>
</record>
</odoo>
Now partner_id field is already there in sale.order which indicates the customer name , so how can i create a onchange function through which when i select customer(partner_id) it shows vehicles belongs to that customer ??