我需要按其中一列中的值对ActiveRecord对象数组进行排序,但我不确定如何执行此操作。
示例,我有一个Schedule模型,它有一个Duration列。然后我有两个Schedule对象OriginalList和NewList数组。我想按持续时间对每个列表进行排序。我想我正在寻找类似的东西: -
Schedule.find(:all,
:conditions => "schedule_id IN (select schedule_id from
#{array.each.schedule_id}",
:order => 'duration')
然而,这看起来并不正确!甚至不在SQL !!
有关如何执行此操作的任何提示将不胜感激。
答案 0 :(得分:1)
糟糕。忽略那个!通过写下来,我想出了我真正想做的事情。
Schedule.find(:all, :conditions => "schedule_id in ("1", "2", "3"), :order => "duration")
在调用之前可以从数组中生成1,2,3。
周五下午归咎于它! :d