従来のRubyメソッドでは、以下の配列user_listからすべての重複オブジェクトを削除することができません。この問題を解決するスマートな方法はありますか?Rubyは配列から重複オブジェクトを削除します
users = []
user_list.each do |u|
user = User.find_by_id(u.user_id)
users << user
#users << user unless users.include?(user) # does not work
end
#users = users.uniq # does not work
などのオブジェクトnilを削除するためにコンパクトに使用することができます。あなたはそれをテストするために取ったステップとあなたの結果が何であるかを表示できますか?ユーザの配列内のオブジェクトのクラスは何ですか? '=='演算子はどのように定義されていますか?このRuby on Railsはありますか? –
'Rails 4'または' Rails 3'を使用していますか?ああ、あなたはまったくレールを使っていますか?そうでなければ、 'User'クラスは何からですか? – nzifnab
こんにちは、これは間違った警報でした!私は間違った形式のデータを持つメソッドを呼び出しました。 users.uniqは実際に動作しています!ご協力いただきありがとうございます。 – user2041343