1

Rails オブジェクト @messages を指定すると、次のように接続されます。

<Message id: 6, sender_id: 2, message: "123">
<Message id: 61, sender_id: 2, message: "stuff abc">
<Message id: 631, sender_id: 2, message: "hello world">
<Message id: 3, sender_id: 4, message: "hello world">

一意のsender_idごとのカウントを決定するにはどうすればよいですか. 出力の意味:

2 | 3
4 | 1

ありがとう

4

1 に答える 1

2

あなたが使用することができますcount

@messages.count(:id, group: :sender_id)

ハッシュを出力します

{ 2 => 3, 4 => 1 }

質問のように出力する必要がある場合

@messages.count(:id, group: :sender_id).each do |sender_id, count|
  puts "#{sender_id} | #{count}"
end
于 2013-03-14T03:49:43.550 に答える