odoo中Many2one的那些事

1、去掉创建并编辑

在form的字段中加入option属性,例如:

<field name="company_id"  options="{'no_create_edit': True}"/>

2、对many2one的值进行筛选

使用onchange对下拉框的值进行过滤

@api.onchange('company_id')
    def company_id_onchange(self):
    	#创建一个集合,将符合条件的值添加进去
        company_id_list = []
        for rec in self.env['hr.employee'].search([('marketing_role_id', '!=', None)]).ids:
        	#将符合条件的值逐个添加
            company_id_list.append(rec)
        #通过domain过滤到res集合,将res集合返回回去
        #因为many2one存放的值是字典类型的
        #而这个domain返回回去的值就是一个字典
        res = {'domain': {'marketing_emp_id': [('id', 'in', company_id_list)]}}
        return res
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值