[英]ROR query order by association
我有一些关系。
class Customer < ActiveRecord::Base
has_many :sites
end
class Site < ActiveRecord::Base
belongs_to :Customer
end
我希望能够获得按客户的长名称字段排序的网站列表,然后是网站的长名称字段排序的网站,我想在页面上的select元素中使用该列表,其中各个选项会像这样。
首先由客户订购,然后由该客户订购。 我不想看到没有站点的客户。
我无法弄清楚如何构建Site.find语句。
我会喜欢这样的东西:
@sites = Site.find(:all, :joins => :customer, :order => "customers.long_name, sites.long_name")
接着,
@sites.each { |s| "#{s.customer.long_name} - #{s.long_name}" }
我会用
Site.all(:include => :customer, :order => "customers.name, sites.name")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.