odoo14里面给所有模型添加方法

给所有的model都添加一个方法, 即所有的model都能调用【类似于create、write、unlink、read】.

方式一:

from odoo import api, fields, models, tools

def common_model_func(self,content):
    print ('teststtg')
    print ('content',content)
    return True
models.BaseModel.common_model_func
= common_model_func # 将此方法传递给BaseModel


然后在其他模型可以调用:
self.
common_model_func('demo')

 

 

使用到的案例

from odoo import api, fields, models, tools
fields_view_get_origin = models.BaseModel.fields_view_get


@api.model
def fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False):
    result = fields_view_get_origin(self, view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu)
    view_get_approval_flow(self, view_type, result)
    return result


models.BaseModel.fields_view_get = fields_view_get

 

posted @ 2021-08-08 15:31  何双新  阅读(319)  评论(0编辑  收藏  举报