【发布时间】:2017-08-29 15:07:46
【问题描述】:
我希望我的自定义验证器仅在它使用的属性存在时运行。
# these are all dates
validates :start_time, presence: true
validates :end_time, presence: true
validates :deadline_visitor, presence: true
validates :deadline_host, presence: true
# these validate the above dates
validate :validate_all_dates
validate :validate_dates
示例:
def validate_all_dates
if self.start_time > self.end_time
errors.add(:start_time, 'must be before or the same day as end time')
end
end
因为self.start_time 和self.end_time 不存在而失败
【问题讨论】:
标签: ruby-on-rails ruby rails-activerecord rspec-rails