1

Rails アプリのレポート ダッシュボードを作成しています。ダッシュボードはユーザー データ用であり、現在、ページ上に 4 つまたは 5 つのレポートを作成するために複数の count an select クエリを実行しています。これを行うためのより効率的な方法があると確信しています。1 つのクエリのみを実行し、個々のレポートに必要なサブセットを解析/分割するように、コントローラー メソッドを構造化するにはどうすればよいですか?

たとえば、ユーザーには性別、年齢、収入の範囲があります。する代わりに

@men = User.count(:conditions => ['gender = ?', 'm']
@women = User.count(:conditions => ['gender = ?', 'f']
@age = User.count(:conditions => ['age_range = ?', 1]
etc.

シングルだけやろうかな

User.find(:all, :select => 'id,gender,age_range,income_range')

そして、必要なものを解析しますか?

どんな助けでも大歓迎です。

ありがとうございました。

4

1 に答える 1

3

私はあなたがこれを行うことができると信じています

@users = User.all

@men = @users.select{|u| u.gender == 'm'}.size
@women = @users.select{|u| u.gender == 'f'}.size
@age = @users.select{|u| u.age_range == 1}.size
于 2010-06-30T16:12:17.587 に答える