شرح صفوف ومحتوى الفقرة
يوفر Eloquent دوال مخصصة على علاقة متعدد لمتعدد لإدراج أو إزالة أو مزامنة الصفوف داخل الجدول الوسيط. بينما تضيف دالة attach ارتباطات جديدة وتمسحها دالة detach، تقبل دالة sync مصفوفة معرفات وتضمن بقاء تلك المعرفات فقط في الجدول الوسيط دون أي تكرار.
- إضافة ارتباط (attach Method): تدرج سجلاً أو أكثر في الجدول الوسيط وتقبل تمرير قيم للأعمدة الإضافية عند الحاجة.
- فصل ارتباط (detach Method): تحذف معرفات محددة من الجدول الوسيط، أو تمسح كافة ارتباطات النموذج إذا استُدعيت بدون معاملات.
- المزامنة الشاملة (sync Method): مثالية لحفظ مربعات الاختيار في النماذج؛ تضيف المعرفات الجديدة وتحذف غير الموجودة في المصفوفة.
PHP
$post->tags()->attach(3, ['added_by' => 1]);
$post->tags()->detach([2, 4]);
$post->tags()->sync([1, 5, 8]);