mirror of
https://github.com/Tivix/django-rest-auth.git
synced 2025-04-19 16:22:12 +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)
|
||||
|
||||
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 == \
|
||||
allauth_settings.EmailVerificationMethod.MANDATORY:
|
||||
return {"detail": _("Verification e-mail sent.")}
|
||||
|
@ -55,9 +59,13 @@ class RegisterView(CreateAPIView):
|
|||
'user': user,
|
||||
'token': self.token
|
||||
}
|
||||
return JWTSerializer(data).data
|
||||
return JWTSerializer(data,
|
||||
context={'request': self.request}
|
||||
).data
|
||||
else:
|
||||
return TokenSerializer(user.auth_token).data
|
||||
return TokenSerializer(user.auth_token,
|
||||
context={'request': self.request}
|
||||
).data
|
||||
|
||||
def create(self, request, *args, **kwargs):
|
||||
serializer = self.get_serializer(data=request.data)
|
||||
|
|
|
@ -17,7 +17,9 @@ UserModel = get_user_model()
|
|||
|
||||
|
||||
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)
|
||||
password = serializers.CharField(style={'input_type': 'password'})
|
||||
|
||||
|
@ -117,7 +119,7 @@ class TokenSerializer(serializers.ModelSerializer):
|
|||
"""
|
||||
Serializer for Token model.
|
||||
"""
|
||||
|
||||
|
||||
class Meta:
|
||||
model = TokenModel
|
||||
fields = ('key',)
|
||||
|
@ -127,10 +129,16 @@ class UserDetailsSerializer(serializers.ModelSerializer):
|
|||
"""
|
||||
User model w/o password
|
||||
"""
|
||||
class Meta:
|
||||
model = UserModel
|
||||
fields = ('pk', 'username', 'email', 'first_name', 'last_name')
|
||||
read_only_fields = ('email', )
|
||||
if settings.ACCOUNT_USER_MODEL_USERNAME_FIELD is None:
|
||||
class Meta:
|
||||
model = UserModel
|
||||
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):
|
||||
|
|
Loading…
Reference in New Issue
Block a user