Django rest framework 两个查找字段django rest
我必须创建一个API来检索租户内的超级管理员: 我的url类似于:Django rest framework 两个查找字段django rest,django-rest-framework,Django Rest Framework,我必须创建一个API来检索租户内的超级管理员: 我的url类似于: path('tenant/<slug:pk>/superadmin/<slug:superadmin>/', SuperAdminRUDView.as_view(), name='tenant-superadmin'), GetSuperAdminsMixin只是一个用于返回查询集的mixin。如何管理此多重查找字段。superadmin的检索应基于slug:superadmin提供的id class
path('tenant/<slug:pk>/superadmin/<slug:superadmin>/', SuperAdminRUDView.as_view(), name='tenant-superadmin'),
GetSuperAdminsMixin只是一个用于返回查询集的mixin。如何管理此多重查找字段。superadmin的检索应基于slug:superadmin提供的id
class GetSuperAdmins(object):
def get_queryset(self):
users = ElsUser.objects.filter(tenant=self.kwargs['pk'])
super_admin_users = []
user_roles = []
role_names = []
for user in users:
role_names = []
user_roles = RoleHelper(user.id).get_user_default_roles()
roles = PMRole.objects.filter(id__in=user_roles)
for role in roles:
role_names.append(role.short_name)
if "tenant_system_admin" in role_names:
super_admin_users.append(user)
return super_admin_users
pk
和superadmin
与查询集的关系如何?pk是要知道哪个租户,superadmin是要获取的superadmin的id。我正在尝试获取id为superadmin的superadmin,它位于id为pki的租户内,并使用查询集更新了问题@JPGok我解决了问题,谢谢@JPG问题是与返回的用户有关。我返回的是列表,而不是查询如何pk
和superadmin
与查询集相关?pk是要知道哪个租户,superadmin是要获取的superadmin的id。我正在尝试获取id为superadmin的superadmin,该superadmin位于id为pki的租户内,并使用查询集更新了问题@JPGok我解决了这个问题,谢谢@jpg这个问题与返回的用户有关。我返回的是列表而不是查询集
class GetSuperAdmins(object):
def get_queryset(self):
users = ElsUser.objects.filter(tenant=self.kwargs['pk'])
super_admin_users = []
user_roles = []
role_names = []
for user in users:
role_names = []
user_roles = RoleHelper(user.id).get_user_default_roles()
roles = PMRole.objects.filter(id__in=user_roles)
for role in roles:
role_names.append(role.short_name)
if "tenant_system_admin" in role_names:
super_admin_users.append(user)
return super_admin_users