class ActiveModel::Errors
def where(attribute, type = nil, **options)
person.errors.where(:name, :too_short) # => all name errors being too short
person.errors.where(:name) # => all name errors.
Only supplied params will be matched.
Search for errors matching +attribute+, +type+, or +options+.
def where(attribute, type = nil, **options) attribute, type, options = normalize_arguments(attribute, type, **options) @errors.select { |error| error.match?(attribute, type, **options) } end