Как я могу сделать некоторые вычисления между значениями дат в рельсах? - PullRequest
0 голосов
/ 24 марта 2011

Учитывая, что у меня есть значение article.created_at, я бы хотел, чтобы пользователь мог редактировать статью, только если созданный_кат меньше 7 дней назад. Если он был создан более 7 дней назад, я не хочу позволять пользователю редактировать статью.

Я пытался использовать

DateTime.now.to_i - article.created_at.to_i

но показывает только разницу во времени между ними в секундах. Конечно, я могу использовать секунды для вычисления 7 дней, но я хотел бы знать, есть ли лучший способ сделать это. Спасибо!

Ответы [ 2 ]

3 голосов
/ 24 марта 2011

Создайте метод в вашей модели Article для тестирования с контроллера, который выполняет что-то вроде этого:

class Article < ActiveRecord::Base

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

end

Затем вернемся в контроллер или представим:

if @some_article.editable?
  # Show edit link
end
0 голосов
/ 24 марта 2011

Вы можете использовать что-то вроде:

article.created_at > 1.week.ago
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...