簡體   English   中英

Odoo 10調用舊API方法

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM