首页 > 解决方案 > 字段更改时产品添加到行

问题描述

我有使字段“紧急”为真的按钮。因此,当我按下该按钮时,我需要将产品“服务”添加到 sale.order.line。试图这样做,但没有运气。

class SaleOrder(models.Model):
    _inherit = "sale.order"

    urgent = fields.Boolean('Urgent')

    @api.multi
    def urgent_activate(self):
        self.urgent = True

    @api.onchange('urgent')
    def urgent_onchange(self):
        if self.urgent:
            vals = {
                'name': 'test',
                'product_id': 1
            }
        self.order_line.write(vals)

标签: odoo-8odoo

解决方案


您可以尝试使用以下代码:

@api.multi
def urgent_activate(self):
    self.urgent = True
    vals = {
        'name': 'test',
        'product_id': 1,
        'order_id':self.id
    }
    self.order_line.create(vals)

关于你的评论......也许是这样的

@api.multi
def urgent_activate(self):
    self.urgent = True

    for order_line in self.order_line:
        if order_line.name == 'Services':               
            vals = {
                'name': 'test',
                'product_id': 1,
                'order_id':self.id
            }
            self.order_line.write(order_line.id,vals)   

我不测试第二部分,让我知道是否有效


推荐阅读