如何在 ODOO 中创建自定义对象?

How to create custom object in ODOO?

onchange触发后有没有办法创建一些新的模型?

例如,我想在报价状态更改为销售订单后创建自定义报表对象。

您可以使用装饰器 @api.onchange('state'):[=13=inside sales.order 在方法中创建模型的新实例 ]

   report_model = self.env['my.custom.report.object']
   new_report_object = report_model.create({
         'report_message': 'Quotation changed state to Sales Order'
   })

我通过尝试覆盖 sale.order 的 action_confirm 方法解决了这个问题,它成功了!

class sale_order(models.Model) :
     _inherit = 'sale.order'
     job_container = fields.One2many('job.container','order')

     @api.multi
     def action_confirm(self):
            super(sale_order, self).action_confirm()
            self.env['job.container'].create({
                'order': self.id
            })