Моя модель имеет два поля, которые я хочу сравнить друг с другом как часть проверки. Я хочу быть уверенным, что end_time после start_time. Я написал метод проверки, чтобы сравнить их, но я должен делать что-то неправильно, потому что значения всегда равны нулю. Может кто-нибудь помочь?
class LogEntry < ActiveRecord::Base
validates :start_time, :presence => { :message => "must be a valid date/time" }
validates :end_time, :presence => {:message => "must be a valid date/time"}
validate :start_must_be_before_end_time
def start_must_be_before_end_time
errors.add(:start_time, "must be before end time") unless
start_time > end_time
end
end
получает ошибку
undefined method `>' for nil:NilClass
Итак, start_time и/или end_time равны нулю. Я думал, что следую многим примерам, которые я нашел, но, видимо, нет. Что мне не хватает?
Спасибо.