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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值