class Foo < ActiveRecord::Base { starts_at datetime; ends_at datetime; }
Как принудительно установить проверку, которая проверяет, стоит ли конец__ после пункта_запуска?
Используйте макрос validate и передайте пользовательский метод.
validate
class Foo < ActiveRecord::Base validate :validate_timeline protected def validate_timeline unless ends_at > starts_at errors.add(:ends_at, "end date cannot precede start date") end end end
Для этого нет предопределенных проверок. Однако вы можете выполнить пользовательские проверки
Здесь вы можете сделать что-то вроде этого:
class Foo < ActiveRecord::Base validate :ends_after_starting private def ends_after_starting if starts_at > ends_at errors.add(:ends_at, "can't be before starts_at") end end end