0

「find_all_by...」メソッドを User.all で取得済みのレコードに適用したいと考えています。これは可能ですか?この時点で、「undefined method `find_all_by_type」エラーが発生します。

rows = User.all
rows.each do |r|
  result = rows.find_all_by_type(r.type)
end
4

1 に答える 1

1

Enumerableレコードが読み込まれると、コレクションに対して任意のメソッドを使用できます。ここで探しているのは次のselectとおりです。

rows = User.all
rows.each do |r|
  result = rows.select {|row| row.type == r.type}
end

ここで実際に何をしようとしているのだろうか。これが擬似コードまたは単純化された例である場合、おそらく上記のコードを適用できます。ただし、これを使用したほうがよい場合があります。

rows = User.all.group_by(&:type)
于 2013-06-10T23:19:14.653 に答える