Badraoui نشر 28 فبراير 2016 أرسل تقرير نشر 28 فبراير 2016 (معدل) الكود التالي على إطار العمل Rails بلغة Ruby : >scope :a, -> { joins(:b).where('bs.c': false) } >scope :a, -> { joins(:b).where('bs.c = ?', false) } ما أريد السؤال عنه، هل السطرين السابقين من الكود متساويين ولا فرق بينهما؟ أم هناك اختلاف؟ تم التعديل في 28 فبراير 2016 بواسطة Badraoui اقتباس
0 E.Nourddine نشر 28 فبراير 2016 أرسل تقرير نشر 28 فبراير 2016 الجملتين كلاهما تعمل نفس الوظيفة، وللتذكير هناك عدة طرق لكتابة Scope على Rails، أسردها كالآتي: scope :a, -> { joins(:b).where(bs: { c: false }) } scope :a, -> { joins(:b).where('bs.c' => false }) } scope :a, -> { joins(:b).where('bs.c = ?', false) } scope :a, -> { joins(:b).where('bs.c = :q', { q: false }) } وشخصيا اُفضل السطر الأول، لأنه يتيح إمكانية سرد قائمة الحقول ضمن جملة الاستعلام، دون الحاجة إلى تكرار الكود وتعقيد الكتابة. اقتباس
السؤال
Badraoui
الكود التالي على إطار العمل Rails بلغة Ruby :
ما أريد السؤال عنه، هل السطرين السابقين من الكود متساويين ولا فرق بينهما؟ أم هناك اختلاف؟
تم التعديل في بواسطة Badraoui1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.