def __init__(self, *args, **kwargs):
self.request = kwargs.pop('request')
super(AssignOrgAdmin, self).__init__(*args, **kwargs)
role = kwargs.get('instance')
if role is not None:
old_admins = role.organization.get_staffs
old_admins_id = [admin[0] for admin in old_admins]
old_admins_id.append(settings.ANONYMOUS_USER_ID)
if hasattr(self.request, "organization"):
if self.request.organization:
users = User.objects.filter(user_profile__organization=self.request.organization, is_active=True).\
filter(id__in=old_admins_id)
else:
users = User.objects.filter(is_active=True).exclude(id__in=old_admins_id)
else:
users = User.objects.filter(is_active=True).exclude(id__in=old_admins_id)
self.fields['user'].queryset = users
self.fields['organization'].choices = old_admins
评论列表
文章目录