Есть ли способ составить список записей созданного DESC, но только для текущих и прошлых дат? - PullRequest
1 голос
/ 08 декабря 2010

У меня есть приложение Ruby on Rails, которое позволяет пользователям создавать Box (спортзал), а затем создавать Workouts, чтобы пользователи могли видеть, что они будут делать в этот день.

Box has_many :workouts
Workout belongs_to :box

Я дал пользователю возможность редактировать поле workout.created_at и позволять им вводить тренировки для будущих дат.На странице /view/boxes/show.html.erb я хочу отображать тренировки только на текущую дату и в прошлом.По сути, я хочу перечислить все тренировки по created_at DESC, но я не хочу будущих тренировок.Есть ли способ сделать это в действии контроллера?

@workouts = @box.workouts.all(:order => "created_at DESC")

Если нет, каков наилучший способ сделать это?

1 Ответ

4 голосов
/ 08 декабря 2010

Вы должны просто иметь возможность добавить в дополнительные условия только возврат «прошлых» записей:

@workouts = @box.workouts.all(:order => "created_at DESC", :conditions => ["created_at <= ?", Time.now])

Это должно показать все тренировки для данного блока, но только те, которые были созданы сегодня илив прошлом.

...