Как в Rails 3.1 отображать только будущие события?

Итак, я создаю приложение для календаря, и отображение события из прошлого не так важно, как отображение предстоящих событий.

Прямо сейчас я построил модель для событий, чтобы сначала отображались самые ранние события, но как мне скрыть от просмотра любое прошедшее событие?

В настоящее время отображается в моем контроллере:

@events = Event.find(:all, :order => "start").paginate(:per_page => 10, :page => params[:page])

Я понятия не имею, как удалить записи, у которых есть дата начала :start, предшествующая сегодняшнему дню. Для этого мне нужно только удалить из поля зрения, могу беспокоиться об удалении базы данных после MVP.


person keade    schedule 08.12.2011    source источник


Ответы (1)


Насколько я понимаю, все, что вам нужно, это условие в вашем вызове find:

@events = Event.find(:all, 
    :order => "start", 
    :conditions => ['start >= ?', Date.today]
).paginate(:per_page => 10, :page => params[:page])

Или в стиле Rails 3:

@events = Event.where('start >= ?', Date.today).order(:start)
               .paginate(:per_page => 10, :page => params[:page])
person KL-7    schedule 08.12.2011
comment
Спасибо, сэр, это отвечает всем требованиям и работает для объявления фида map json в контроллере. Ваше здоровье. - person keade; 08.12.2011