视图集很方便,因为我们可以做这样的事情并获得一个完全工作的序列化器:
class StoreObjectViewSet(mixins.ListModelMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet):
permission_classes = [IsAuthenticated]
queryset = StoreObject.active_objects.all()
serializer_class = serializers.StoreObjectSerializer
不幸的是,据我所知,要将上下文传递给序列化程序,我们需要执行以下操作:
PostSerializer(data=request.data, context={'request': request})
这意味着我们需要手动覆盖 ViewSets 提供的每个方便的方法(据我所知)。有没有办法将上下文注入每个序列化程序,同时仍然保持 Viewsets 方便?