사용자의 생일을받는 양식이 있습니다.레일에서 날짜를 변경하는 연도
나는 생일을 가져다 다른 속성에 저장하지만 현재 연도를 가져 가고 싶습니다.
나는 전화에 이렇게 다시
모델 보드
before_save : set_delivery_date
def set_delivery_date
self.delivery_date = self.birthday
self.delivery_date.change(:year => Time.now.year)
end
생일은 1920년 7월 27일
이것은을 변경하지 않는 것입니다 날짜.
누구든지이 작업을 수행하는 방법을 알고 있습니까?
업데이트
다음 작품을 내가 데이터베이스에 새로운 날짜 볼 수 있습니다 : 나는 RSpec에 테스트를 수행하려고 할 때
self.deliver_on = self.birthday.change(:year => Time.now.year)
또는 내가 다음을 생산하는 콘솔에서 그것을 시도 오류 :
ArgumentError: invalid date
왜 이런 일이 일어나는 지 아는 사람이 있습니까?
내가 두 솔루션을 시도하고 지금은 유효하지 않은 날짜를 얻고이 문제를 해결하는 방법은 두 가지가 있습니다. 내가 단지 년을 바꾸고있는 것에 따라 매우 이상한. 어떤 아이디어? – chell
self.birthday.change (: year => Time.now.year가 invalid_date 예외를 생성합니다. – chell
테스트를 게시하거나 실제로 생일을 처리하기 전에'birthday'의 유효성을 검사 할 수 있습니까? –