Django Rest Framework视图返回一个空对象

时间:2015-05-15 00:55:17

标签: python django django-rest-framework

我正在创建一个REST API来为Android应用程序提供服务。我并没有试图重新发明轮子,所以我试图在https://github.com/revsys/django-friendship/和DRF一起使用django-friendship应用程序。不幸的是,django-friendship的文档相当稀疏,我是Django / DRF开发的新手。我遇到了一个无法根据个人查看朋友关系的问题。

朋友列表视图应显示所有请求用户的朋友。我可以在单独的视图上创建朋友,但该视图显示了每个朋友的关系。我希望能够查看特定用户的朋友。也就是说,当用户获取/ friends /目录时,它将显示他们的朋友列表。

但是,此时此视图仅显示空JSON对象,而不是用户的好友列表。我应该如何更改我的FriendList视图,以便它正确返回用户的好友列表?

views.py

class FriendList(APIView):
    """
    Lists all of the requesting users friends
    """
    def get(self, request):
        friends = Friend.objects.friends(request.user)
        serializer = FriendSerializer(friends, many=True)
        return Response(serializer.data)

serializer.py

class FriendSerializer(serializers.ModelSerializer):
     class Meta:
        model = Friend

urls.py

urlpatterns = patterns('',
    url(r'^', include(router.urls)),
    url(r'^api-auth/', include('rest_framework.urls',
                               namespace='rest_framework')),
    url(r'^api-token-auth/', obtain_auth_token),
    url(r'^friends', views.FriendList.as_view())

1 个答案:

答案 0 :(得分:0)

def get(self, request):        
  friends = Friend.objects.friends(request.user)

在上面的代码中,您可能希望使用get()filter()代替friends()