class URLReachableValidator < ActiveModel::EachValidator
def validate_each(record, attribute, value)
format_validator = URLFormatValidator.new
format_validator.validate_each(record, attribute, value)
end
end
Но я бы просто использовал наследование или дополнение для совместного использования функциональности.
class URLValidator < ActiveModel::EachValidator
# shared funtionality ...
end
class URLFormatValidator < URLValidator
def validate_each(record, attribute, value)
# ...
end
end
class URLReachableValidator < URLValidator
def validate_each(record, attribute, value)
# ...
end
end