我正在关注Ryan Bates关于可排序表列的railscast,并且我已经成功地获得了一个列来升序和降序。
我的表比Railscast更复杂,因为我有来自不同表的列。
# controller
@cars = Car.find(:all).order(sort_column + " " + sort_direction).includes(:manufacturers)
#view
<%= sortable "age" %>
如何为制造商等相关表格添加可排序列?
答案 0 :(得分:3)
我有类似的问题。用以下内容解决了这个问题:
<%= sortable "manufacturers.name", "Manufacturer name" %>
<%= sortable "cars.age", "Age" %>
application_controller中的sort函数应该是这样的:
def sort_column
['manufacturers.name', 'cars.age'].include?(params[:sort]) ? params[:sort] : 'cars.age'
end