Я добавляю пользовательское One2many поле в sale.order виде формы чуть ниже sale.order.line .
Я вычисляя значения on_change , он отображает значения, но когда я собираюсь сохранить заказ на продажу, он генерирует ошибку, что
ValueError: Неправильное значение для tax.lines.order_id: sale. order (24,)
Python:
class SaleOrderInherit(models.Model):
_inherit = ['sale.order']
tax_line = fields.One2many('tax.lines', 'order_id', states={'cancel': [('readonly', True)], 'done': [('readonly', True)]}, copy=True, auto_join=True)
@on.change('partner_id')
def calculating_tax(self):
//After some code
self.env['tax.lines'].create({
'tax_id': tax['tid'],
'name': tax['name'],
'amount': tax['tax'],
'order_id': self.id
})
class TaxLines(models.Model):
_name = 'tax.lines'
tax_id = fields.Char('Tax Id')
name = fields.Char('Tax Name')
amount = fields.Char('Tax Amount')
order_id = fields.Many2one('sale.order', string='Tax Report', ondelete='cascade', index=True, copy=False)
Поскольку я создаю поле one2many до создания заказа. Но есть ли способ избавиться от этой проблемы.
Редактировать: Ошибка после замены моего кода на Charif DZ
код: