изменить год для даты в Rails

У меня есть форма, которая получает день рождения пользователя.

Я хочу взять день рождения и сохранить его в другом атрибуте, но взять текущий год.

Я делаю это при обратном вызове

Образец платы

before_save: set_delivery_date

def set_delivery_date

self.delivery_date = self.birthday
self.delivery_date.change(:year => Time.now.year)
end

День рождения - 27 июля 1920 г.

Кажется, это не меняет дату.

Кто-нибудь знает, как для этого?

Обновление

Следующие работы Я вижу новую дату в базе данных:

 self.deliver_on = self.birthday.change(:year => Time.now.year)

Однако, когда я пытаюсь выполнить тесты rspec или пытаюсь выполнить это в консоли, появляется следующая ошибка:

ArgumentError: invalid date

кто-нибудь знает, почему это происходит?

5
задан chell 28 July 2011 в 04:36
поделиться