我正在使用handles_sortable_columns对Rails 3中的列进行排序,并且想知道是否有一种方法可以按除了使用连接之外的其他表中的列进行排序。Rails按列名在另一个表中对列进行排序
我有一列是查询另一个表中的列的名称。
也就是说,我已经cities.country_id作为一列,在视图模板我做的:
@cities.each do |city|
city.country.name
显示的名称。
我希望能够按此列排序,但是countries.name
,而不是cities.country_id
。
有谁知道这可能与宝石或任何其他简单的方式吗?如果是这样如何?
我能想到的唯一的事情就是在控制器中执行一条IF语句,并按国家排序,然后使用联接运行另一个查询,但这很丑陋,容易出错,希望得到某些东西更优雅。
谢谢。
对不起,我不明白你的意思 – kakubei
我会更新的答案。 – Webjedi
这真的很有趣。我从来没有见过它。最后,我加入了一个联盟,所以我也可以查询国家名称,但非常感谢您指出了这一点。我必须试一试。 – kakubei