@classmethod
def get_validators(cls, validator_str):
    """Converter a validator string to a list of validator instances.

        Args:
            validator_str (str):

        Returns:
            List[BaseValidator]: A list of validator instances.

        Raises:
            TODO: Determine a special error.
        """
    validators = []
    if not validator_str:
        return validators
    rules = validator_str.split('|')
    for rule in rules:
        if ':' in rule:
            name, args = rule.split(':', 2)
            name = name.strip()
            args = map(lambda x: x.strip(), args.split(','))
        else:
            name = rule.strip()
            args = ()
        validator_class = cls.get(name)
        if validator_class:
            validators.append(validator_class(*args))
        else:
            raise Exception('Can not resolve validator class: %s.' % name)
    return validators
