كيفية عزل/استرداد/حساب مجموعة فرعية من السجلات التي تم إرجاعها في القضبان

StackOverflow https://stackoverflow.com/questions/3150704

سؤال

أنا أكتب لوحة معلومات تقارير لتطبيق Rails. لوحة القيادة مخصصة لبيانات المستخدم ، وهي تعمل حاليًا على عدد من الاستعلامات المحددة لإنشاء التقارير الأربعة أو الخمسة على الصفحة. أنا متأكد من أن هناك طريقة أكثر كفاءة للقيام بذلك. كيف يمكنني أن أقوم بإنشاء طريقة وحدة التحكم بحيث يتم تشغيل استفسار واحد فقط ، ثم يقوم بتوزيع/تقسيم المجموعات الفرعية اللازمة للتقارير الفردية؟

على سبيل المثال ، يتمتع المستخدم بنوع الجنس وعمر ومدى دخل. بدلا من القيام

@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')

ثم تحليل ما أحتاجه؟

أي مساعدة موضع تقدير.

شكرًا لك.

هل كانت مفيدة؟

المحلول

أعتقد أنه يمكنك القيام بذلك

@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
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top