class RegisterSerializer(get_user_serializer()):
    """
    User register serializer
    """

    def validate_password(self, value):
        """
        Validate user password
        """
        password_validation.validate_password(value, self.instance)
        return value

    def create(self, validated_data):
        """
        Override create method to create user password
        """
        user = super().create(validated_data)
        user.set_password(validated_data['password'])

        # Disable veriried if enable verify user, else set it enabled
        if has_user_activate_token() or has_user_verify_code():
            set_user_verified(user, False)
        else:
            set_user_verified(user, True)
        user.save()
        return user
Example #2
0
class ProfileSerializer(get_user_serializer()):
    """
    Profile serializer
    """
    def __init__(self, *args, **kwargs):
        """
        Custom to add partial=True to PUT method request to skip blank
        validations
        """

        if kwargs.get('context'):
            request = kwargs['context'].get('request', None)

            if request and getattr(request, 'method', None) == 'PUT':
                kwargs['partial'] = True

        super(ProfileSerializer, self).__init__(*args, **kwargs)
Example #3
0
 def test_get_user_serializer(self):
     self.assertEqual(users.get_user_serializer(), UserSerializer)