我在需要排序的表中显示了多个数据实例 - 这些数据大部分是从表中计算出来的,而不仅仅是表中的原始值。
一个简单的例子:Column A = User.visits / User.membership_term
我正在使用可排序的表格列:http://railscasts.com/episodes/228-sortable-table-columns。
我已经尝试将计算放在控制器中并将类方法添加到我的模型中,但似乎都不起作用。如何按计算字段排序?
答案 0 :(得分:1)
您始终可以使用基本排序方法:
irb(main):001:0> a = [1, 2, 3, 4, 5]
=> [1, 2, 3, 4, 5]
irb(main):002:0> a.sort {|d,e| (d - 3).abs <=> (e - 3).abs}
=> [3, 2, 4, 1, 5] # sort by closest distance away from the number 3
因此,您可以使用类似的方式对活动记录数组进行排序。