سؤال

في Ruby on Rails، كيف يمكنني العثور على أعلى 3 سجلات في جدولي تسمى الإشعارات مرتبة حسب حقل معين، في حالتي أريد الترتيب حسب حقل الموضع الذي يعد عددًا صحيحًا.

لذلك يبدو جدول الإشعارات الخاص بي كما يلي:

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

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

المحلول

ونظرا لديك الدرجة إشعار أكتيفيريكورد، وهذا ينبغي القيام به: Notice.find(:all, :limit => 3, :order => 'particularField')

نصائح أخرى

ستفعل شيئًا مثل:

Notice.find(:all,:order => "position", :limit => 3)

سيؤدي ذلك إلى إحضار السجلات الثلاثة الأولى مرتبة حسب الموضع (في هذا المثال، المواضع 1،2،3 أو ​​السجلات الأولى الأقل.يمكنك تغيير قيمة الأمر إلى "الموضع DESC" إذا كنت تريد المراكز 20،19،18، على سبيل المثال).

حظ سعيد!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top