如何从 sale_order_line onchange 方法中获取 sale_order.id?在 odoo 9
How can I get the sale_order.id from sale_order_line onchange method? In odoo 9
我想从 sale.order.line onchange 方法中获取 sale.order 的 id 值。
我有这个代码:
class SaleOrderLineExt(models.Model):
_inherit = ['sale.order.line']
@api.multi
@api.onchange('my_field')
def my_field_change(self):
related_sale_order = self.order_id
print 'related_sale_order: ', related_sale_order
print 'related_sale_order.id: ', related_sale_order.id
但是我得到的输出是这样的:
related_sale_order: sale.order(<openerp.models.NewId object at 0x7f7566029810>,)
related_sale_order.id: <openerp.models.NewId object at 0x7f7566029810>
我可以查看销售订单的其他值,但不能查看 Id。为什么会这样,我怎样才能得到它?
试试这个
class SaleOrderLineExt(models.Model):
_inherit = ['sale.order.line']
@api.multi
@api.onchange('my_field')
def my_field_change(self):
related_sale_order = self.order_id.id
print "related_sale_order " related_sale_order
在 onchange 方法中,框架传递 d 具有视图中值的虚拟对象,以便获得您所做的原始记录:
self._origin.related_sale_order.id
但是你应该记住,当你创建记录时相关的销售订单还没有保存在数据库中,你会得到相同的结果,但在编辑模式下你会有 id。
希望对您有所帮助。
我想从 sale.order.line onchange 方法中获取 sale.order 的 id 值。
我有这个代码:
class SaleOrderLineExt(models.Model):
_inherit = ['sale.order.line']
@api.multi
@api.onchange('my_field')
def my_field_change(self):
related_sale_order = self.order_id
print 'related_sale_order: ', related_sale_order
print 'related_sale_order.id: ', related_sale_order.id
但是我得到的输出是这样的:
related_sale_order: sale.order(<openerp.models.NewId object at 0x7f7566029810>,)
related_sale_order.id: <openerp.models.NewId object at 0x7f7566029810>
我可以查看销售订单的其他值,但不能查看 Id。为什么会这样,我怎样才能得到它?
试试这个
class SaleOrderLineExt(models.Model):
_inherit = ['sale.order.line']
@api.multi
@api.onchange('my_field')
def my_field_change(self):
related_sale_order = self.order_id.id
print "related_sale_order " related_sale_order
在 onchange 方法中,框架传递 d 具有视图中值的虚拟对象,以便获得您所做的原始记录:
self._origin.related_sale_order.id
但是你应该记住,当你创建记录时相关的销售订单还没有保存在数据库中,你会得到相同的结果,但在编辑模式下你会有 id。
希望对您有所帮助。