diff --git a/rest_auth/app_settings.py b/rest_auth/app_settings.py index b1960eb..bb6c27a 100644 --- a/rest_auth/app_settings.py +++ b/rest_auth/app_settings.py @@ -1,13 +1,13 @@ from django.conf import settings if getattr(settings, 'REST_AUTH_TOKEN_APP', False) is 'knox': - from rest_auth.serializers import KnoxTokenSerializer as DefaultTokenSerializer from .utils import create_knox_token as default_create_token else: - from rest_auth.serializers import TokenSerializer as DefaultTokenSerializer from .utils import default_create_token from rest_auth.serializers import ( + TokenSerializer as DefaultTokenSerializer, + KnoxTokenSerializer as DefaultKnoxTokenSerializer, JWTSerializer as DefaultJWTSerializer, UserDetailsSerializer as DefaultUserDetailsSerializer, LoginSerializer as DefaultLoginSerializer, @@ -27,6 +27,9 @@ TokenSerializer = import_callable( JWTSerializer = import_callable( serializers.get('JWT_SERIALIZER', DefaultJWTSerializer)) +KnoxTokenSerializer = import_callable( + serializers.get('KNOX_TOKEN_SERIALIZER', DefaultKnoxTokenSerializer)) + UserDetailsSerializer = import_callable( serializers.get('USER_DETAILS_SERIALIZER', DefaultUserDetailsSerializer) ) diff --git a/rest_auth/registration/views.py b/rest_auth/registration/views.py index ce84a0d..9e2dd6d 100644 --- a/rest_auth/registration/views.py +++ b/rest_auth/registration/views.py @@ -16,6 +16,7 @@ from allauth.account import app_settings as allauth_settings from rest_auth.app_settings import (TokenSerializer, JWTSerializer, + KnoxTokenSerializer, create_token) from rest_auth.models import TokenModel from rest_auth.registration.serializers import (SocialLoginSerializer, @@ -49,6 +50,12 @@ class RegisterView(CreateAPIView): 'token': self.token } return JWTSerializer(data).data + if getattr(settings, 'REST_AUTH_TOKEN_APP', False) is 'knox': + data = { + 'token': self.token + } + return KnoxTokenSerializer(data).data + else: return TokenSerializer(self.token).data