Я вижу, что пользовательские валидаторы используются в моделях (хорошо), но я также вижу, что сами валидаторы добавляют к объекту ошибки записи.
например я вижу
(измененный пример)
class Title < ActiveRecord::Base
# implement the method called during validation
def validate_each(record, attribute, value)
record.errors[attribute] << 'must be Mr / Mrs / Dr.' unless ['Mr.', 'Mrs.', 'Dr.'].include?(value)
end
end
Это похоже на состояние, которое должно выполняться в контроллере, и проверка должна просто возвращать true
/ false
, но, возможно, нет.