コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
8761 ビュー

hai, i need to populate a many2one field with condition i cant use domain filter here,i want to take some data filter from many2many table,so i need to write a conditonal populate for many2one field, Please Help me. Regards jamshid k

アバター
破棄
最善の回答

You can try something like below: In custom object of your .py file:

def _get_emp_type_domain(self, cr, uid, ids, field_name, arg, context=None):
    if ids:
        record_id = ids[0] 
        emp_type_list = self.pool.get('many2many_table').browse(cr, uid, ids, context=context)
        list = []
        for id in emp_type_list:
            list.append(id.name.id)
        return {ids[0]: [('id','in',list)]}    

_columns = {
    'emp_type': fields.many2one('hr.job', 'Employee Group'),
    'domain_field': fields.function(_get_emp_type_domain, type='char', size=255, method=True, string="Domain"),

In xml file:

<field name="domain_field" invisible="1"/> 
<field name="emp_type" domain="domain_field"/>

Hope this may help you.

アバター
破棄
著作者

Thanks Nehal

関連投稿 返信 ビュー 活動
0
11月 22
80
1
10月 22
3773
1
6月 22
7230
1
7月 21
2793
1
7月 21
4235