Шаги для создания API входа в систему с использованием django rest framework с помощью Token Authentication - PullRequest
0 голосов
/ 24 мая 2019

Я пытаюсь создать API входа в систему с помощью LoginSerializer и LoginAPIView с помощью django-rest-auth, кто-нибудь может объяснить, как это сделать?

1 Ответ

0 голосов
/ 24 мая 2019

Это довольно просто, следующие шаги:

Сначала создайте класс сериализатора UserLoginSerializer в файле сериализатора и включите в него следующие коды

class UserLoginSerializer(serializers.ModelSerializer):
class Meta:
    model = Account
    fields = ('id', 'username','title','email')

Во-вторых, создайте класс в представлениях и включите следующие коды

class Login(APIView):
permission_classes = (AllowAny,)
  def post(self,request):
    email = request.data.get('email',None)
    password = request.data.get('password',None)
    if email and password:
        user_obj = Account.objects.filter(email__iexact=email)
        if user.exists() and user.first().check_password(password):
            user = UserLoginSerializer(user_obj)
            data_list = {}
            data_list.update(user.data)
            return Response({"message": "Login Successfully", "data":data_list, "code": 200})
        else:
            message = "Unable to login with given credentials"
            return Response({"message": message , "code": 500, 'data': {}} )
    else:
        message = "Invalid login details."
        return Response({"message": message , "code": 500, 'data': {}})
...