2016-01-18 1 views
0

Мне нужно переопределить метод fields_view_get класса BaseModel в odoo9, и метод должен быть общим.Как переопределить метод field_view_get класса BaseModel в Odoo V9? (Общий метод 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.

Error Log: TypeError: fields_view_get() занимает по меньшей мере 3 аргумента (5) данные

Как я могу это сделать?

Спасибо, Ожидание ответа ..

ответ

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)