Ruby on Rails 分组验证

示例

有时,使用一个条件进行多次验证会很有用。使用with_options可以轻松实现。

class User < ApplicationRecord
  with_options if: :is_admin? do |admin|
   admin.validates:password, length: { minimum: 10 }
   admin.validates:email, presence: true
  end
end

如果::is_admin?,with_options块内的所有验证将自动通过条件。