شرح صفوف ومحتوى الفقرة
يقضي الجمع بين ربط النماذج الضمني في مسارات السجل المفرد وترقيم الصفحات في مسارات القوائم على الكود المكرر في المتحكمات ويحمي ذاكرة الخادم. احرص دائماً على دمج الترقيم مع التحميل المسبق ودالة withQueryString لتقديم صفحات قوائم سريعة ومتوافقة مع الفلاتر.
| وجه المقارنة الهندسي | الأسلوب اليدوي أو غير المحسن | معيار Laravel 12 الحديث |
|---|---|---|
| جلب سجل المسار | كتابة استعلام البحث ودالة firstOrFail يدوياً في كل إجراء | استخدام الربط الضمني بالمسار مع تحديد العمود {post:slug} |
| ملكية المسار المتداخل | فحص تطابق معرف الأب مع الابن يدوياً وإطلاق 404 | إلحاق دالة scopeBindings بتعريف المسار المتداخل |
| عرض الجداول الكبيرة | استدعاء all لجلب آلاف الصفوف واستنزاف ذاكرة الخادم | استخدام دالة paginate أو cursorPaginate لتقسيم النتائج |
| حفظ فلاتر البحث | ضياع معاملات التصفية والبحث عند النقر على الصفحة الثانية | إلحاق دالة withQueryString بكائن الترقيم قبل تمريره للعرض |
PHP
Route::get('/posts/{post:slug}', function (Post $post) {
$comments = $post->comments()
->with('author:id,name')
->paginate(15);
return view('posts.show', compact('post', 'comments'));
});
خلاصة المعرفة ومحطة الانتقال
ملخص الدرس
حصاد الدرسمراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي
ماذا تعلّمت في هذا الدرس؟
أتقنت في هذا الدرس حول «ربط النماذج بالمسارات وترقيم الصفحات في Eloquent» مفاهيم ربط النماذج الضمني بالمسارات، وربط النموذج عبر عمود السلج، والربط المقيد ومعالجة السجل المفقود وفق معايير Laravel 12 الحديثة.
الخطوة التالية والدرس القادم
انتقل الآن إلى الدرس التالي «تجزئة كلمات المرور والتشفير وحراس المصادقة في Laravel» للبناء التراكمي على ما تعلمته.