2012-10-02 17 views
0

我有2种型号在我的Rails 3应用程序,我用它来形容人,他们居住的地方 不幸的是我设置这些不使用协会轨道3以便通过另一款列

的2个表是建立这样

People 
id 
name 
location_id 

Locations 
    id 
    name 

我想要做的就是名单中的Locations.name按字母顺序排列People.name人民表中的所有字母排序

我可以使用此代码由LOCAT这组每个人做一个简单的排序离子,但我需要钻入位置表以及

@people = People.all(:order => '"location_id" ASC, "name" ASC') 

任何人有什么想法?

而且它是一个好主意,成立一个协会在人民类说LOCATION_ID是Locations.id

回答

4

添加

belongs_to :location 

给人们类

然后你就可以查询采用以下方式:

@people = People.joins(:location).order("locations.name ASC, people.name ASC") 
+0

非常感谢你,那完美的工作 – user891380