0

これに答えるとき、私はRailsにまったく慣れていないことを覚えておいてください。私の質問は次のとおりです。

.findクエリの結果である配列があります。この配列はビューに渡され、各アイテムが表示されます。ただし、渡す前に、各配列要素に情報を追加する必要があります。各要素が配列の場合は<<を使用でき、ハッシュの場合は.mergeを使用できますが、それが何であるかまったくわからないため、情報を追加する方法がわかりません。

あなたが私を助けてくれることを願っています!

4

2 に答える 2

1

わかりました、あなたのコメントはそれを少し明確にします。あなたがそうするとき、あなたはオブジェクトUser.find(n)を取り戻しuserます。次のようなことを行うと、オブジェクトUser.find(1, 2, 3)の配列が得られuserます。したがって、これに動的に追加することは、おそらく理想的なソリューションではありません。

しかし、これを行うための1つのハッキーな方法があります

users = User.find(1, 2, 3)
modified_users = users.map { |user| Array(user) << "some value tacked on" }

userこれにより、オブジェクトが配列に変換され、それに値が追加されます。推奨されませんが、それはあなたが求めていることをします。

于 2012-06-23T01:12:29.927 に答える
1

あなたは彼らが何であるかを知ることができます...ちょうど puts results.class

配列内のオブジェクトをいじりたくない場合は、追加情報を含む配列またはハッシュを作成できます。

results.map do |r|
  Hash[result: r, info: "your information here"]
end
于 2012-06-23T01:20:31.107 に答える