From cf9f469b540f22f4c0fa511d1d74d3f049193e40 Mon Sep 17 00:00:00 2001 From: Federico Capoano Date: Thu, 8 Nov 2018 12:36:02 +0100 Subject: [PATCH] Pass serializer context in RegisterView.get_response_data #478 Pass serializer context to TokenSerializer/JWTSerializer so extensions of these serializers can make use of it to implement custom logic. Closes #478 --- rest_auth/registration/views.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/rest_auth/registration/views.py b/rest_auth/registration/views.py index 0e0ab0d..af8a92c 100644 --- a/rest_auth/registration/views.py +++ b/rest_auth/registration/views.py @@ -50,14 +50,16 @@ class RegisterView(CreateAPIView): allauth_settings.EmailVerificationMethod.MANDATORY: return {"detail": _("Verification e-mail sent.")} + context = self.get_serializer_context() + if getattr(settings, 'REST_USE_JWT', False): data = { 'user': user, 'token': self.token } - return JWTSerializer(data).data + return JWTSerializer(data, context=context).data else: - return TokenSerializer(user.auth_token).data + return TokenSerializer(user.auth_token, context=context).data def create(self, request, *args, **kwargs): serializer = self.get_serializer(data=request.data)