我有一个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")
如果没有,最好的方法是什么?
最佳答案
您应该能够添加附加条件以仅返回“过去”记录:
@workouts = @box.workouts.all(:order => "created_at DESC", :conditions => ["created_at <= ?", Time.now])
这将显示给定框中的所有训练,但仅显示今天或过去创建的训练。