我正在使用handles_sortable_columns 对Rails 3 中的列进行排序,并且想知道是否有一种方法可以按另一个表中的列进行排序,而不是使用连接。
我有一列是在另一个表中查找列的名称。
也就是说,我将 city.country_id 作为一列,并在 View 模板中执行以下操作:
@cities.each do |city|
city.country.name
显示名称。
我希望能够按此列排序,但countries.name
不是cities.country_id
.
有谁知道这是否可以通过 gem 或任何其他简单的方式实现?如果有怎么办?
我能想到的唯一一件事是在控制器中执行 IF 语句并按国家/地区进行排序,然后使用连接运行不同的查询,但这很丑陋且容易出错,希望得到更优雅的东西。
谢谢。