added validation to UserSerializer
This commit is contained in:
parent
20921719d3
commit
5449891394
|
|
@ -45,15 +45,19 @@ class UserQuerySet(models.QuerySet):
|
||||||
return self.filter(is_active=switcher)
|
return self.filter(is_active=switcher)
|
||||||
|
|
||||||
def by_oauth2_access_token(self, token):
|
def by_oauth2_access_token(self, token):
|
||||||
"""Find user by access token"""
|
"""Find users by access token"""
|
||||||
return self.filter(oauth2_provider_accesstoken__token=token,
|
return self.filter(oauth2_provider_accesstoken__token=token,
|
||||||
oauth2_provider_accesstoken__expires__gt=timezone.now())
|
oauth2_provider_accesstoken__expires__gt=timezone.now())
|
||||||
|
|
||||||
def by_oauth2_refresh_token(self, token):
|
def by_oauth2_refresh_token(self, token):
|
||||||
"""Find user by access token"""
|
"""Find users by access token"""
|
||||||
return self.filter(oauth2_provider_refreshtoken__token=token,
|
return self.filter(oauth2_provider_refreshtoken__token=token,
|
||||||
oauth2_provider_refreshtoken__expires__gt=timezone.now())
|
oauth2_provider_refreshtoken__expires__gt=timezone.now())
|
||||||
|
|
||||||
|
def by_username(self, username: str):
|
||||||
|
"""Filter users by username."""
|
||||||
|
return self.filter(username=username)
|
||||||
|
|
||||||
|
|
||||||
class User(ImageMixin, AbstractUser):
|
class User(ImageMixin, AbstractUser):
|
||||||
"""Base user model."""
|
"""Base user model."""
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,12 @@ class UserSerializer(serializers.ModelSerializer):
|
||||||
raise serializers.ValidationError()
|
raise serializers.ValidationError()
|
||||||
return value
|
return value
|
||||||
|
|
||||||
|
def validate_username(self, value):
|
||||||
|
"""Validate username"""
|
||||||
|
if models.User.objects.by_username(username=value).exists():
|
||||||
|
raise serializers.ValidationError()
|
||||||
|
return value
|
||||||
|
|
||||||
def update(self, instance, validated_data):
|
def update(self, instance, validated_data):
|
||||||
"""
|
"""
|
||||||
Override update method
|
Override update method
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user