В моем приложении я хочу поддерживать пустое поле даты, что означает «некоторая неопределенная дата в будущем», как при входе, так и при просмотре.Так как я храню это в базе данных и сортирую nil до любой даты, отличной от nil, я решил обезопасить класс Date, чтобы реализовать метод «max_value», который возвращает «1/1/10000» (дату, которую я выбрал дляпредставлять неопределенную дату в будущем).Я перегрузил +, -, to_s и другие операторы / методы, чтобы вести себя соответствующим образом с этим значением.Затем я добавил в модель обратный вызов before_save для преобразования любых пустых дат в Date.max_value.Кажется, что все это работает (за исключением нескольких ошибок, которые я пытаюсь решить), но есть ли лучший способ сделать это без мартовских исправлений класса?