Начиная с rails 3.0, вы также можете получить доступ к validators
методу класса , чтобы манипулировать, чтобы получить список всех проверок. Однако вы не можете манипулировать набором проверок через этот массив.
По крайней мере, с рельсов 5.0 вы, похоже, способны манипулировать методом _validators
(недокументированным).
Используя этот метод, вы можете изменить валидации в подклассе, например, например:
class Child < Parent
# add additional conditions if necessary
_validators.reject! { |attribute, _| attribute == :parent_id }
end
Хотя в нем используется недокументированный метод, он дает то преимущество, что суперклассу ничего не нужно знать о реализации дочернего элемента.