uniqメソッド
uniqは、配列内の重複した要素を取り除いて、新しい配列を返すメソッドです。
*Rails5以前であれば、モデルに対して重複したレコードも一つにまとめることができましたが、Rails5以降はdistinctメソッドが正式メソッドとなったため、モデルに対しては使えません。
参考例
以下のような配列に対しuniqを使うと、重複した”5”が一つにまとまりました。
arr = [1, 2, 3, 4, 5, 5, 5, 5, 5]
arr.uniq
=> [1, 2, 3, 4, 5]
またuniqは以下のように、引数にブロックを取ることもできます。
members = ["ogino", "fujiwara", "nakamura", "OGINO"]
members.uniq{ |name| name.upcase }
=> ["ogino", "fujiwara", "nakamura"]
この場合だと、upcaseで大文字でも重複しているとみなすので、”OGINO”は一つにまとめられました。