2011-03-24 3 views
0

article.created_at 값이 주어지면 created_at가 7 일 미만인 경우에만 기사를 편집 할 수있게하고 싶습니다. 7 일 이상 전에 created_at했다면 사용자가 기사를 편집하도록 허용하지 않습니다. 레일에서 날짜 값 사이의 계산을 어떻게 수행합니까?

나는
DateTime.now.to_i - article.created_at.to_i 

를 사용하여 시도했지만 그것은 단지 초 사이의 시간 차이를 보여줍니다. 물론, 7 일을 계산하는 데 초를 사용할 수 있지만,이 작업을 수행하는 더 좋은 방법이 있는지 알고 싶습니다. 감사합니다. 컨트롤러 나 뷰 다시 그런

class Article < ActiveRecord::Base 

    def editable? 
    self.created_at > 7.days.ago 
    end 

end 

:이 같은 무언가를 컨트롤러에서 테스트하기 위해 당신의 기사를 모델의 방법을 만들기

article.created_at > 1.week.ago 

답변

0

당신은 같은 것을 사용할 수 있습니다 :

if @some_article.editable? 
    # Show edit link 
end