Siirry sisältöön
Menu
Sinun on rekisteröidyttävä, jotta voit olla vuorovaikutuksessa yhteisön kanssa.
Tämä kysymys on merkitty

Hi all, I need to inherit parent class attributes and functions to  a child class but to create a child entry, i have to create first the parent reference and child attribut (here: amount and is_active).

I would like to automatically create the parent object and  child from on form. ie a form with name, code, amount and is_active

We put all required attributes and asked odoo to create parent and child references.

Any suggestion please ?

Best regards

PS: I'm using odoo15

class ParentModel(models.Model):
_description = "Parent "
_name = "generic.parent"
name = fields.Char("Name", required=True)
code = fields.Char("Code", default="/", required=True)


class ChildModel(models.Model):
_description = "Child Model"
_inherits = {'generic.parent': 'parent_id'}
_name = "child.name"
amount = fields.Float("amount", default=0.0)
is_active = fields.Boolean("Is Active ?", default=False, required=True)
parent_id = fields.Many2one('generic.parent', string='Parent ID', ondelete='cascade')


Avatar
Hylkää

Read the concept of Odoo Inheritance: https://goo.gl/4Zyc9d

Paras vastaus

Inheritance in odoo models is not like the abstraction of other python frameworks such as Django and etc. The closest solution is for ParentClass to inherit from AbstractModel like:

class ParentModel(models.AbstractModel):
    _name = "generic.parent"
    name = fields.Char("Name", required=True)
    code = fields.Char("Code", default="/", required=True)


class ChildModel(models.Model):
  _inherit = 'generic.parent'
    amount = fields.Float("amount", default=0.0)
    is_active = fields.Boolean("Is Active ?", default=False, required=True)


Avatar
Hylkää
Aiheeseen liittyviä artikkeleita Vastaukset Näkymät Toimenpide
1
lokak. 22
3097
1
syysk. 22
3187
1
elok. 22
3332
1
jouluk. 23
2554
0
syysk. 23
1093