我可以按关联对象的属性对对象列表进行排序吗? 例如,使用以下类 class RosterSlot ActiveRecord::Base belongs_to :event belongs_to :skill belongs_to :personend 我想做点什么 RosterSlot.find(:all,:order = ski
例如,使用以下类
class RosterSlot < ActiveRecord::Base belongs_to :event belongs_to :skill belongs_to :person end
我想做点什么
RosterSlot.find(:all,:order => skill.name)
这意味着activerecord需要进行连接和订购.
有任何想法吗?
是的,您可以使用:include选项进行连接.RosterSlot.find(:all, :include => [:skill], :order => "skills.name ASC")
:order选项采用SQL片段,因此技能是对多个数据库表名的引用.
:include包含一系列活动记录关联.
有关详细信息,请参阅http://www.railsbrain.com/api/rails-2.3.2/doc/index.html?a=M002313&name=find.