2009-04-10 83 views
0

我需要按其中一列中的值对ActiveRecord对象数组排序,但不确定如何执行此操作。按列排序ActiveRecord对象数组

例如,我有一个具有Duration列的Schedule模型。然后我有两个Schedule对象的数组OriginalList和NewList。我想按持续时间对每个列表进行排序。我认为我正在寻找类似的东西: -

Schedule.find(:all, 
       :conditions => "schedule_id IN (select schedule_id from 
               #{array.each.schedule_id}", 
       :order => 'duration') 

但是,这看起来并不正确!即使在SQL!

任何提示如何做到这一点,将不胜感激。

回答

1

糟糕。忽略它!通过写下来,我想出了我真正想做的事情。

Schedule.find(:all, :conditions => "schedule_id in ("1", "2", "3"), :order => "duration") 

其中1,2,3可以在调用之前从数组中生成1,2,3。

星期五下午指责它! :D