movie-night-api/users/views.py

18 lines
658 B
Python

from django.contrib.auth import login
from rest_framework import permissions
from knox.views import LoginView as KnoxLoginView
from rest_framework.authtoken.serializers import AuthTokenSerializer
from users.serializers import UserSerializer
class LoginView(KnoxLoginView):
serializer_class = UserSerializer
permission_classes = [permissions.AllowAny]
def post(self, request, format=None):
serializer = AuthTokenSerializer(data=request.data)
serializer.is_valid(raise_exception=True)
user = serializer.validated_data["user"]
login(request, user)
return super(LoginView, self).post(request, format=None)