Include User Details for Knox responses

Knox includes User details after successful login. This should be replicated when using knox for Login and Registration.
This commit is contained in:
Daniel Stanton 2017-01-25 16:00:58 +00:00
parent 89dd206128
commit abb0ae963e
3 changed files with 10 additions and 7 deletions

View File

@ -52,6 +52,7 @@ class RegisterView(CreateAPIView):
return JWTSerializer(data).data
elif getattr(settings, 'REST_USE_KNOX', False):
data = {
'token': self.user,
'token': self.token
}
return KnoxTokenSerializer(data).data

View File

@ -119,13 +119,6 @@ class TokenSerializer(serializers.ModelSerializer):
fields = ('key',)
class KnoxTokenSerializer(serializers.Serializer):
"""
Serializer for Knox AuthToken model.
"""
token = serializers.CharField()
class UserDetailsSerializer(serializers.ModelSerializer):
"""
User model w/o password
@ -152,6 +145,14 @@ class JWTSerializer(serializers.Serializer):
user = JWTUserDetailsSerializer()
class KnoxTokenSerializer(serializers.Serializer):
"""
Serializer for Knox AuthToken model.
"""
token = serializers.CharField()
user = JWTUserDetailsSerializer()
class PasswordResetSerializer(serializers.Serializer):
"""
Serializer for requesting a password reset e-mail.

View File

@ -91,6 +91,7 @@ class LoginView(GenericAPIView):
context={'request': self.request})
elif getattr(settings, 'REST_USE_KNOX', False):
data = {
'user': self.user,
'token': self.token
}
serializer = serializer_class(instance=data,