前提・実現したいこと
下記のような配列があったとして、
priority
でsort_by して priority
基準で昇順降順にした後、
priority
が同じ値の中だけで id
を昇順 にしたいのですが、方法が分かりません
※ [<priority: 3, id: 1>,<priority: 3, id: 3>,<priority: 2, id: 2>]のようにしたいです。
状況としては、rspecにて、上記の様な配列を求めたいためorder
も使えない状況です。
下記のような配列
example = [#<FrequentlyAskedQuestion:0x00007f9da9013710 id: 293, priority: 5>, #<FrequentlyAskedQuestion:0x00007f9da1e66630 id: 294, priority: 9>, #<FrequentlyAskedQuestion:0x00007f9da1e6c648 id: 295, priority: 3>, #<FrequentlyAskedQuestion:0x00007f9da1e7ea28 id: 296, priority: 4>, #<FrequentlyAskedQuestion:0x00007f9da1e84860 id: 297, priority: 6>]
発生している問題・エラーメッセージ・試したこと
.sort_by(&:id).sort_by(&:priority).reverse
などしてみたのですが、求めている配列になりませんでした。
補足情報(FW/ツールのバージョンなど)
ruby 2.6
rails 5.2
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/10 14:46 編集
2019/12/10 15:16
2019/12/10 15:17