2018-07-16-自定义验证

2018-07-16  本文已影响0人  护念

自定义验证,可以是与字段的验证完全无关,做为对象验证的补充;也可以去验证字段

一、与字段无关

class Comment < ApplicationRecord
 # 注意自定义的验证是 单数哈
  validate :weekday_valid?

   def weeday_valid?
       errors.add(:base,'周末不能创建评论') if [6,0].include?(Time.now.wday)
   end
end

他也可以接块哦

class Comment < ApplicationRecord
  validate do |comment|
     comment.errors.add(:base,'周末不能创建评论') if [6,0].include?(Time.now.wday)
  end
end

二、与字段相关

class Comment < ApplicationRecord
  validate :title_must_start_with_dd
 
  def title_must_start_with_dd
    errors.add(:title, '标题必须用dd开头') unless title.start_with? 'dd'  
  end

end
上一篇下一篇

猜你喜欢

热点阅读