Если назначить неверную дату (например, 39-го декабря) в колонке даты и времени ActiveRecord возвращает «не может быть пустым» ошибка, когда это необходимо, вероятно, возвращает ошибку, как «ошибочный формат даты»Неправильная ошибка
Мои вопрос. Это ожидаемое поведение рельсов, ошибка или что-то, что я могу исправить?
class ExerciseLog < ActiveRecord::Base
validates_presence_of :scheduled_datetime
end
Запустить консоль.
e = Log.new
# lets set a date for Dec 39th which obviously doesn't exist
e.scheduled_datetime = "2010-12-39"
e.save
=> false
# this is the confusing message since our form did post a valid date
e.errors.on(:scheduled_datetime)
=> "can't be blank"
e.scheduled_datetime = "2010-12-30"
e.save
=> true
Обнаружена эта проблема, когда я случайно перенес значения месяца и дня.
КСТАТИ Это в Rails 2.3.5