レコードがあり、それを配列内に挿入し、後でアクセスしたいと考えています。
users = User.all
results = []
users.each do |user|
results << {:name => user.name, :email => user.email}
end
結果変数はまだ配列ですか? はいの場合、どうすればすべての名前と電子メールを取得できますか?
レコードがあり、それを配列内に挿入し、後でアクセスしたいと考えています。
users = User.all
results = []
users.each do |user|
results << {:name => user.name, :email => user.email}
end
結果変数はまだ配列ですか? はいの場合、どうすればすべての名前と電子メールを取得できますか?
この例では、results
各ユーザー名と電子メールを含むハッシュで満たされた配列を作成します。
いくつかの方法でアクセスできますが、最も簡単なのは単純なループです。
results.each do |result|
name = result[:name]
email = result[:email]
end
次のように、個々のアイテムに直接アクセスすることもできます。
first_result_name = results[0][:name]
ただし、存在しない可能性のある結果にアクセスしようとすることには注意してください。
しかし、私は尋ねなければなりません、なぜあなたはこれをしたいのですか?すべてのUser
s name と email を配列に割り当てても何のメリットもありません。User.all の機能はまったく同じです。
はい、それはまだ配列です。たとえば、次のようにして、後で必要なものを手に入れることができます。
results.each do |result|
result[:name] # access to name
result[:email] # access to email
end