2

データベースにはこれらの属性を持つ多数のユーザーがいますが、各ユーザーの電子メール アドレスのみが必要です

#<User id: 1, email: "email@yahoo.com", encrypted_password: "", reset_password_token: nil, reset_password_sent_at: nil, remember_created_at: nil, sign_in_count: 0, current_sign_in_at: nil, last_sign_in_at: nil, current_sign_in_ip: nil, last_sign_in_ip: nil, created_at: "2012-09-03 09:14:01", updated_at: "2012-09-03 09:14:01", name: nil, confirmation_token: nil, confirmed_at: nil, confirmation_sent_at: nil, unconfirmed_email: nil, opt_in: nil, invitation_token: nil, invitation_sent_at: nil, invitation_accepted_at: nil, invitation_limit: nil, invited_by_id: nil, invited_by_type: nil>,

コンソールで、私はやった

  u = User.all

すべてのユーザーとその属性を出力しました。

今、私が試したそれぞれの電子メールアドレスを取得する

   u.each do |f|
     f.email
   end

しかし、すべての属性を含むユーザーのリスト全体を再度出力しただけです。

他の属性を除外して、すべてのユーザーの電子メール アドレスのリストを出力する方法を誰か教えてもらえますか?

4

1 に答える 1

5

入力した内容の結果が最後にコンソールに出力されます。

u.each { any } と書くと、コンソールは each ループの結果を表示します。明示的に出力するには、出力関数 (puts、p、pp、print など) を使用する必要があります。

users = User.all
puts users.map(&:email).join("\n")
于 2012-09-21T08:26:46.200 に答える