This question has been flagged


Python Code:

class ProductTemplateInherit(models.Model):
_inherit = 'product.template'
x_attribute_line_ids = fields.One2many('product.template.attribute.line',
'x_product_tmpl_id', 'X Product Attributes')
class ff_product_template_attribute_line(models.Model):
_inherit = 'product.template.attribute.line'

main_line_id = fields.Many2one(comodel_name='product.template.attribute.line')
x_product_tmpl_id = fields.Many2one('product.template',
string='X Product Template',
ondelete='cascade', required=True)
 x_attribute_id = fields.Many2one('product.attribute', string='X Attribute', ondelete='restrict', required=True)
x_value_ids = fields.Many2many('product.attribute.value', string='X Attribute Values')
And On Create i add:


@api.model
def create(self, vals):
"""
- On create a record related to product_tmpl_id add same vals on ff_product_tmpl_id
:param vals:
:return: SUPER
"""
print("VALS:: ",vals)
rec = super(x_product_template_attribute_line, self).create(vals)
if vals.get('x_product_tmpl_id'):
new_vals = {
'product_tmpl_id': rec.x_product_tmpl_id.id,
'attribute_id': rec.x_attribute_id.id,
'value_ids': [(0, 0, rec.x_value_ids.ids)]
}
print("New Vals: ", new_vals)
main_line_id = self.create(new_vals)
print("main_line_id", main_line_id)
rec.main_line_id = main_line_id.id
return rec
but it doesn't do the needed result, and keep showing errors. 
on the other hand, I tried to add second field as related from first one such as :
x_attribute_line_ids = fields.One2many(related='attribute_line_ids',
invenrse_name='x_product_tmpl_id', 'X Product Attributes')
but it wasn't so accurate. 


Avatar
Discard