我想知道是否有关于自定义操作使用轨验证的方式自定义验证。轨道上行动
例如,我想这样做:
validates_presence_of :description, :on => :publish, :message => "can't be blank"
我做基本的验证创建和保存,但也有很多事情我不想要求前面。也就是说,他们应该能够保存准确的记录而不验证所有的字段,但是我有我的控制器和模型中的自定义“发布”动作和状态,在使用时应该验证以确保记录是100%
上面的例子没有工作,有什么想法?
UPDATE:
我的状态机看起来是这样的:
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
我发现我可以补充后卫,但我仍然希望能够使用轨验证,而不是做这一切的在自定义方法上。
的变化上这对我有用,但是,我将如何显示我的show view中的错误? – Raoot 2012-09-10 16:51:43