mirror of
https://github.com/Tivix/django-rest-auth.git
synced 2025-07-01 18:13:03 +03:00
Merge 85607b39dd
into cdd04aa9be
This commit is contained in:
commit
be9b47362a
|
@ -46,6 +46,10 @@ class RegisterView(CreateAPIView):
|
||||||
return super(RegisterView, self).dispatch(*args, **kwargs)
|
return super(RegisterView, self).dispatch(*args, **kwargs)
|
||||||
|
|
||||||
def get_response_data(self, user):
|
def get_response_data(self, user):
|
||||||
|
"""
|
||||||
|
Here I added context to the return of each serializer so
|
||||||
|
HyperlinkedIdentityFields would work for the user return
|
||||||
|
"""
|
||||||
if allauth_settings.EMAIL_VERIFICATION == \
|
if allauth_settings.EMAIL_VERIFICATION == \
|
||||||
allauth_settings.EmailVerificationMethod.MANDATORY:
|
allauth_settings.EmailVerificationMethod.MANDATORY:
|
||||||
return {"detail": _("Verification e-mail sent.")}
|
return {"detail": _("Verification e-mail sent.")}
|
||||||
|
@ -55,9 +59,13 @@ class RegisterView(CreateAPIView):
|
||||||
'user': user,
|
'user': user,
|
||||||
'token': self.token
|
'token': self.token
|
||||||
}
|
}
|
||||||
return JWTSerializer(data).data
|
return JWTSerializer(data,
|
||||||
|
context={'request': self.request}
|
||||||
|
).data
|
||||||
else:
|
else:
|
||||||
return TokenSerializer(user.auth_token).data
|
return TokenSerializer(user.auth_token,
|
||||||
|
context={'request': self.request}
|
||||||
|
).data
|
||||||
|
|
||||||
def create(self, request, *args, **kwargs):
|
def create(self, request, *args, **kwargs):
|
||||||
serializer = self.get_serializer(data=request.data)
|
serializer = self.get_serializer(data=request.data)
|
||||||
|
|
|
@ -17,7 +17,9 @@ UserModel = get_user_model()
|
||||||
|
|
||||||
|
|
||||||
class LoginSerializer(serializers.Serializer):
|
class LoginSerializer(serializers.Serializer):
|
||||||
username = serializers.CharField(required=False, allow_blank=True)
|
if settings.ACCOUNT_USER_MODEL_USERNAME_FIELD is not None:
|
||||||
|
username = serializers.CharField(required=False, allow_blank=True)
|
||||||
|
|
||||||
email = serializers.EmailField(required=False, allow_blank=True)
|
email = serializers.EmailField(required=False, allow_blank=True)
|
||||||
password = serializers.CharField(style={'input_type': 'password'})
|
password = serializers.CharField(style={'input_type': 'password'})
|
||||||
|
|
||||||
|
@ -127,10 +129,16 @@ class UserDetailsSerializer(serializers.ModelSerializer):
|
||||||
"""
|
"""
|
||||||
User model w/o password
|
User model w/o password
|
||||||
"""
|
"""
|
||||||
class Meta:
|
if settings.ACCOUNT_USER_MODEL_USERNAME_FIELD is None:
|
||||||
model = UserModel
|
class Meta:
|
||||||
fields = ('pk', 'username', 'email', 'first_name', 'last_name')
|
model = UserModel
|
||||||
read_only_fields = ('email', )
|
fields = ('pk', 'email', 'first_name', 'last_name')
|
||||||
|
read_only_fields = ('email', )
|
||||||
|
else:
|
||||||
|
class Meta:
|
||||||
|
model = UserModel
|
||||||
|
fields = ('pk', 'username', 'email', 'first_name', 'last_name')
|
||||||
|
read_only_fields = ('email', )
|
||||||
|
|
||||||
|
|
||||||
class JWTSerializer(serializers.Serializer):
|
class JWTSerializer(serializers.Serializer):
|
||||||
|
|
Loading…
Reference in New Issue
Block a user