odoo/openerp 多字段搜索(name_search)

odoo 中一個many2one字段要顯示多列。要在對應的類中添加方法name_get

如:

@api.multi
@api.depends('name','project_name')
def name_get(self):
    return [(r.id,(r.name +'('+(r.project_name or _('Default'))+')' )) for r in self]

http://blog.csdn.net/shanzhizi


要實現內容過濾還應該添加方法 name_search


@api.model
def name_search(self,name='',args=None,operator='ilike',limit=100):
    args = args or []
    domain = []
    if name:
        domain = ['|',('name',operator,name),('project_name',operator,name)]
    pos = self.search(domain + args,limit=limit)
    return pos.name_get()

http://blog.csdn.net/shanzhizi


非常又用得技巧,原文:http://jingyan.baidu.com/article/00a07f3856292582d028dc39.html


發佈了245 篇原創文章 · 獲贊 357 · 訪問量 268萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章