如何修复django模型管理器以使用序列化程序

如何修复django模型管理器以使用序列化程序,django,django-rest-framework,Django,Django Rest Framework,我在我的应用程序中使用了模型管理器来完成繁重的工作。能够在web版本中很好地使用它,但在通过API将数据移动到移动应用程序的查询序列化方面存在困难 模型管理器可以很好地用于基于web的界面。正在尝试序列化,以便数据可以进入React Native for mobile app。对queryset的重写似乎是一条出路 以下是序列化程序中的代码: class UserBeltsSerializer(serializers.ModelSerializer): class Meta:

我在我的应用程序中使用了模型管理器来完成繁重的工作。能够在web版本中很好地使用它,但在通过API将数据移动到移动应用程序的查询序列化方面存在困难

模型管理器可以很好地用于基于web的界面。正在尝试序列化,以便数据可以进入React Native for mobile app。对queryset的重写似乎是一条出路

以下是序列化程序中的代码:

class UserBeltsSerializer(serializers.ModelSerializer):
    class Meta:
        model = UserBelts
        fields = ('__all__')
以下是.api中的代码:

    class SingleUserBeltViewSet(generics.ListAPIView):
        permission_classes = [
            permissions.IsAuthenticated,
        ]
        serializer_class = UserBeltsSerializer

        def get_queryset(self):
            beltlist = UserBelts.objects.all_belts(user=self.request.user)
            return beltlist
错误消息如下:

AttributeError at /api/singleuserbelts
Got AttributeError when attempting to get a value for field `user` on serializer `UserBeltsSerializer`.
The serializer field might be named incorrectly and not match any attribute or key on the `str` instance.
Original exception text was: 'str' object has no attribute 'user'.

花了好几个小时,直到我找到一个模糊的参考。我的模型管理器没有返回纯查询集(它是一个查询集,包含web版本正在使用的一些附加信息)。一旦我从它通常返回的对象中解析出QuerySet,错误就消失了