当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – 按关联对象的属性排序对象列表

来源:互联网 收集:自由互联 发布时间:2021-06-23
我可以按关联对象的属性对对象列表进行排序吗? 例如,使用以下类 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.

网友评论