# up login serializer
This commit is contained in:
parent
07fe6aa162
commit
9d66545550
|
@ -1,8 +1,12 @@
|
|||
from rest_framework import serializers
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.db.models import Q
|
||||
from rest_framework_jwt.settings import api_settings
|
||||
|
||||
|
||||
User = get_user_model()
|
||||
jwt_payload_handler = api_settings.JWT_PAYLOAD_HANDLER
|
||||
jwt_encode_handler = api_settings.JWT_ENCODE_HANDLER
|
||||
|
||||
|
||||
class UserDetailSerializer(serializers.ModelSerializer):
|
||||
|
@ -36,7 +40,6 @@ class UserDetailSerializer(serializers.ModelSerializer):
|
|||
return obj.get_image_url()
|
||||
|
||||
|
||||
|
||||
class UserLoginSerializer(serializers.ModelSerializer):
|
||||
token = serializers.CharField(allow_blank=True, read_only=True)
|
||||
username = serializers.CharField(required=False, allow_blank=True)
|
||||
|
@ -82,8 +85,10 @@ class UserLoginSerializer(serializers.ModelSerializer):
|
|||
raise serializers.ValidationError('This username/email is not valid.')
|
||||
|
||||
if user_obj:
|
||||
payload = jwt_payload_handler(user_obj)
|
||||
token = jwt_encode_handler(payload)
|
||||
if not user_obj.check_password(password):
|
||||
raise serializers.ValidationError('Incorrect credentials pls try again.')
|
||||
data['token'] = 'SOME RANDOM TOKEN'
|
||||
data['token'] = token
|
||||
|
||||
return data
|
||||
|
|
Loading…
Reference in New Issue