[英]Odoo 10 call old api method
我正在使用Odoo 10並嘗試覆蓋股票quants_get_preferred_domain方法。
我的代碼:
@api.v7
def quants_get_preferred_domain(self, cr, uid, qty, move, ops=False, lot_id=False, domain=None, preferred_domain_list=[], context=None):
我收到一個錯誤:
File "/opt/odoo10/addons/stock/models/stock_move.py", line 660, in action_assign
quants = Quant.quants_get_preferred_domain(qty, move, domain=main_domain[move.id], preferred_domain_list=[])
TypeError: quants_get_preferred_domain() takes at least 5 arguments (5 given)
裝飾器可以解決什么問題,在v10上如何正確調用舊的api方法?
似乎您正在將方法裝飾器定義從@api.model
為@api.v7
您可以在quants_get_preferred_domain方法的代碼中進行檢查 。 您應該可以將方法重寫定義為:
@api.model
def quants_get_preferred_domain(self, qty, move, ops=False, lot_id=False, domain=None, preferred_domain_list=[]):
您還應該檢查您的Odoo版本是否已過時,從而可能在早期的Odoo 10版本中解決了一些問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.