2016-09-16 49 views
0

我已將一個字段添加到名爲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 

我改變了它不是空的選擇,並且它所有的數據顯示在列表罰款視圖。這是一個錯誤,還是我做錯了什麼?

回答

-1

嘗試用: print self.uom_class['test']

+0

嗨,這有同樣的結果... – Nross2781

1

好吧,我發現這個問題。這實際上是一個問題的意見...

我不小心複製和粘貼在另一個選項卡上的修改uom_class的聲明。所以我的變量被列出了兩次。 Odoo發現它正在改變,但我想它沒有很好地處理它有兩個完全相同的領域。

一個非常愚蠢的錯誤。很抱歉,任何浪費他們時間的人。

相關問題