如何控制视图 class queryset 中的项目?
How can control the items in view class queryset?
class ModelListCreateView(GetQuerysetMixin, generics.ListCreateAPIView):
queryset = get_objects_for_user(self.context['request'].user, 'model.view_model')
serializer_class = ModelSerializer
permission_classes = (permissions.IsAuthenticated,)
在上面的代码片段中,我试图只查询给定用户应该看到的项目。我试过 queryset = get_objects_for_user(request.user, 'model.view_model')
但这不起作用并导致错误 'request' 未定义。在谷歌搜索并尝试我现在拥有的东西后,我得到错误 'self' 未定义。我也在尝试在其他权限之上实施 django-guardian。
如果要访问请求对象,则覆盖get_queryset
而不是设置queryset
。
class ModelListCreateView(GetQuerysetMixin, generics.ListCreateAPIView):
def get_queryset(self):
return get_objects_for_user(self.request.user, 'model.view_model')
class ModelListCreateView(GetQuerysetMixin, generics.ListCreateAPIView):
queryset = get_objects_for_user(self.context['request'].user, 'model.view_model')
serializer_class = ModelSerializer
permission_classes = (permissions.IsAuthenticated,)
在上面的代码片段中,我试图只查询给定用户应该看到的项目。我试过 queryset = get_objects_for_user(request.user, 'model.view_model')
但这不起作用并导致错误 'request' 未定义。在谷歌搜索并尝试我现在拥有的东西后,我得到错误 'self' 未定义。我也在尝试在其他权限之上实施 django-guardian。
如果要访问请求对象,则覆盖get_queryset
而不是设置queryset
。
class ModelListCreateView(GetQuerysetMixin, generics.ListCreateAPIView):
def get_queryset(self):
return get_objects_for_user(self.request.user, 'model.view_model')