aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/authtoken/views.py
diff options
context:
space:
mode:
authorStephan Groß2012-11-21 11:56:34 +0100
committerStephan Groß2012-11-21 11:56:34 +0100
commit6ba4df8a27016fd5e60a3852eea6c97231a03281 (patch)
tree935bb3d51a9c3f4307d2d83d4b4c2e4d884886e3 /rest_framework/authtoken/views.py
parented713d0354b67bdc64de9346b9a72e1adfced76e (diff)
parent3268c67343f6fc6364a0127a7bfabeb907a4751d (diff)
downloaddjango-rest-framework-6ba4df8a27016fd5e60a3852eea6c97231a03281.tar.bz2
Merge remote-tracking branch 'upstream/master' into regex_field
Conflicts: docs/topics/release-notes.md
Diffstat (limited to 'rest_framework/authtoken/views.py')
-rw-r--r--rest_framework/authtoken/views.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/rest_framework/authtoken/views.py b/rest_framework/authtoken/views.py
index e69de29b..3ac674e2 100644
--- a/rest_framework/authtoken/views.py
+++ b/rest_framework/authtoken/views.py
@@ -0,0 +1,24 @@
+from rest_framework.views import APIView
+from rest_framework import status
+from rest_framework import parsers
+from rest_framework import renderers
+from rest_framework.response import Response
+from rest_framework.authtoken.models import Token
+from rest_framework.authtoken.serializers import AuthTokenSerializer
+
+class ObtainAuthToken(APIView):
+ throttle_classes = ()
+ permission_classes = ()
+ parser_classes = (parsers.FormParser, parsers.MultiPartParser, parsers.JSONParser,)
+ renderer_classes = (renderers.JSONRenderer,)
+ model = Token
+
+ def post(self, request):
+ serializer = AuthTokenSerializer(data=request.DATA)
+ if serializer.is_valid():
+ token, created = Token.objects.get_or_create(user=serializer.object['user'])
+ return Response({'token': token.key})
+ return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
+
+
+obtain_auth_token = ObtainAuthToken.as_view()