2017-10-03 5 views
1

res.s의 many2one 필드가 있습니다. 그리고이 필드에 대해 그룹 A, 그룹 B 및 그룹 C의 세 그룹을 만들었습니다.이 그룹의 경우 그룹 관련 사용자에게 변경을 적용했습니다. 그리고 변화에 잘 작동합니다. 이제 그룹 B가 기본 그룹으로 선택되기를 바랍니다. 그렇다면 그룹 B 기본값을 양식에서 수정하는 방법 (그룹 ID = 33)? Odoov8의 res.groups에서 특정 그룹 "그룹 B"를 수정하는 방법

내 파이썬 코드 :

'group_id':fields.many2one('res.groups', string='Group:') 

'assign_to': fields.many2one('res.users','Assigned To:',) 


def onchange_assign(self, cr, uid, ids, group_id, context=None): 

     if not context: 

      context = {} 

     res = {} 

     groups_obj = self.pool.get('res.groups') 

     sunarc_obj = self.pool.get('sun.helpdesk') 

     #record_id = context.get('active_id') 

     print "g:", group_id 

     #data = sunarc_obj.read(cr, uid, record_id) 

     #print data 

     #group_id = data['group_id'] and data['group_id'][0] 

     groups_ids = [] 

     groups = groups_obj.browse(cr, uid, group_id, context=context) 

     print "groups:", groups, groups.users.ids 

     if group_id: 

      res['domain'] = {'assign_to': [('id', '=', groups.users.ids)]} 

     print "group_id" 

     return res 

XML 코드 : -

<field name="group_id" on_change="onchange_assign(group_id)"/>       

<field name="assign_to" options="{'create':false}"/> 

답변

2

당신이 시도 할 수있는 그룹 이름을 이름에 따라 시도 할 수 있습니다 이 방법 :

def _get_default_esc(self): 
    esc_to = self.env['res.groups'].search([('name', '=', 'Group A')], limit=1) 
    print "group:" 
    return esc_to 
+0

예, '그룹 B'는 저에게 도움이됩니다. –

2

당신이

def _get_default_esc(self): 

print "yes:", 33 

return 33 

    'group_id' : fields.many2one('res.groups', "Group", change_default=True, default=_get_default_esc), 
+0

예, 작품 양식입니다. 하지만 검색 방법으로이 작업을 수행하는 방법을 알려주실 수 있습니까? –