Я хотел бы знать, есть ли способ использовать проверки рельсов для настраиваемого действия.
Например, я хотел бы сделать что-то вроде этого:
validates_presence_of :description, :on => :publish, :message => "can't be blank"
Я делаю базовые проверкисоздавать и сохранять, но есть очень много вещей, которые я не хочу требовать сразу.Т.е. они должны иметь возможность сохранять пустые записи без проверки всех полей, однако у меня есть пользовательское действие и состояние «опубликовать» в моем контроллере и модели, которые при использовании должны проверять, чтобы убедиться, что запись равна 100%
Приведенный выше пример не сработал, есть идеи?
ОБНОВЛЕНИЕ:
Мой конечный автомат выглядит так:
include ActiveRecord::Transitions
state_machine do
state :draft
state :active
state :offline
event :publish do
transitions :to => :active, :from => :draft, :on_transition => :do_submit_to_user, :guard => :validates_a_lot?
end
end
Я обнаружил, что могу добавить охранников, но все же я хотел бы иметь возможность использовать проверки рельсов вместо того, чтобы делать все это на пользовательском методе.