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