whi*_*roi 2 ruby ruby-on-rails ruby-on-rails-3
sort_by_this_array = [4,2,1,3] < - 这是属性goal_id的数组.
然后我有我的
[<Todo id: 12, goal_id: 2]>, <Todo id: 13, goal_id: 2>, <Todo id: 6, goal_id: 1>, <Todo id: 7, goal_id: 2 >, <Todo id: 25, goal_id: 3 >, <Todo id: 30, goal_id: 1 >, <Todo id: 40, goal_id: 4 >]
Run Code Online (Sandbox Code Playgroud)
结果应为:id:40,12,13,7,6,30,25
我正在考虑2个循环,这绝对不是最好的方法.
小智 6
也许尝试这种方法:
S = Struct.new(:id, :v)
a = Array.new(5) { |i| S.new(i, i) }
a.shuffle!
a.sort_by {|e| [2, 3 , 1 , 4, 0].index(e.id) }
Run Code Online (Sandbox Code Playgroud)
它将a按ID顺序返回.
| 归档时间: |
|
| 查看次数: |
827 次 |
| 最近记录: |