我需要覆盖odoo9中BaseModel类的fields_view_get方法,该方法应该是通用的。
在 models.py 中,fields_view_get()声明为7.0版标准。
我使用了以下基本结构:
from openerp import models, fields, api, _
from openerp.osv.orm import BaseModel
def fields_view_get(self, cr, user, view_id=None, view_type='form', context=None, toolbar=False, submenu=False,final_result={}):
BaseModel.fields_view_get = fields_view_get
此代码适用于7.0版,但不适用于9.0版。
错误日志:TypeError:fields_view_get()至少需要3个参数(给定5个)
我该怎么做?
谢谢, 等待回复..
答案 0 :(得分:1)
得到了解决方案。请找到这个。
from openerp import models, fields, api, _
class BaseModelExtend(models.AbstractModel):
_name = 'basemodel.extend'
def _register_hook(self, cr):
@api.cr_uid_context
def fields_view_get(self, cr, user, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
#Code
models.BaseModel.fields_view_get = fields_view_get
return super(BaseModelExtend, self)._register_hook(cr)