django rest framework - 添加到views.obtain_auth_token

Ofe*_*mon 7 overriding view django-rest-framework http-token-authentication

我用django rest框架实现了令牌认证,我可以发布用户名和密码/api-token-auth/并获取令牌.

url(r'^api-token-auth/', token_views.obtain_auth_token)
Run Code Online (Sandbox Code Playgroud)

除了令牌,我想获得User与返回的令牌相关的对象.

如何覆盖/添加到此视图并返回实际的User对象?

小智 9

您可以在此处找到相关视图:

https://github.com/tomchristie/django-rest-framework/blob/master/rest_framework/authtoken/views.py#L21

假设您已经创建了某种用户序列化程序,您基本上可以将user实例放在那里并将其推送到UserSerializer中.然后将其添加到响应中,如下所示.

... 
user_serializer = UserSerializer(user)
return Response({'token': token.key, 'user': user_serializer.data})
Run Code Online (Sandbox Code Playgroud)