6

我有点迷失了......我正在尝试开发一个需要对 Django Web 应用程序进行身份验证的离子应用程序。

我安装了 Django-Rest-Framework 和 Django-Rest-Auth。我可以登录,使用令牌获取用户,但是如何检索更多用户数据?

url(r'^rest-auth/', include('rest_auth.urls')),
url(r'^rest-token-auth/$',obtain_auth_token),

在 host.com/rest-auth/user/ url 中使用 Django-rest-auth 我只有以下数据:

HTTP 200 OK
Content-Type: application/json
Vary: Accept
Allow: GET, PUT, HEAD, OPTIONS, PATCH

{
    "username": "ikerib",
    "email": "ikerib@gmail.com",
    "first_name": null,
    "last_name": null
}

但我需要更多!像 id、user_photo、city...

我尝试像这样配置用户序列化程序:

from rest_framework import serializers
from gamer.models import GamerUser

class GameUserSerializer(serializers.ModelSerializer):
    class Meta:
        model = GamerUser
        fields = ('id', 'fullname', 'get_photo', 'karma')

这个观点:

@csrf_exempt
def gameuser_detail(request, pk):
    try:
        gameuser = GameUser.objects.get(pk=pk)
    except GameUser.DoesNotExist:
        return HttpResponse(status=404)

    if request.method == 'GET':
        serializer = GameUserSerializer(gameuser)
        return JSONResponse(serializer.data)

但我无法获取用户数据,因为我不知道用户 ID..

任何帮助或线索???

提前致谢

4

1 回答 1

11

您可以简单地将自定义序列化程序添加到您的应用程序设置中,如下所示:

REST_AUTH_SERIALIZERS = {
    'USER_DETAILS_SERIALIZER': 'path.to.custom.GameUserSerializer',
}

http://django-rest-auth.readthedocs.org/en/latest/configuration.html

于 2015-11-01T17:08:03.340 回答