Odoo v9 - onchange没有看到更改字段的值
问题描述:
我已将一个字段添加到名为uom_class的product.template。当它发生变化时,我需要根据其值来更改其他字段。不幸的是,Odoo把它当作空的对待,并且总是返回False。我不知道为什么。这里是我的代码Odoo v9 - onchange没有看到更改字段的值
class product_uom_class(models.Model):
_inherits = {'product.uom.categ':'catid'}
_name = 'productuom.class'
catid = fields.Many2one('product.uom.categ', ondelete='cascade', required=True)
test = fields.Boolean('isbool',default=True)
# [...]
class ProductTemplate(models.Model):
_inherit = 'product.template'
uom_class = fields.Many2one(
'productuom.class', 'Per Product UOM Conversion Class',
required=False, help="Unit of Measure class for Per Product UOM")
@api.onchange('uom_class')
def onchange_uom_class(self):
print self.list_price
print self.uom_id.name
print self.uom_class
print self.uom_class.test
print self.uom_class.catid.name
从Python命令行的结果是
24.0
Dozen(s)
productuom.class()
False
False
我改变了它不是空的选择,并且它所有的数据显示在列表罚款视图。这是一个错误,还是我做错了什么?
答
尝试用: print self.uom_class['test']
答
好吧,我发现这个问题。这实际上是一个问题的意见...
我不小心复制和粘贴在另一个选项卡上的修改uom_class的声明。所以我的变量被列出了两次。 Odoo发现它正在改变,但我想它没有很好地处理它有两个完全相同的领域。
一个非常愚蠢的错误。很抱歉,任何浪费他们时间的人。
嗨,这有同样的结果... – Nross2781