Laravel: العمل مع العلاقات البليغة

Laravel يجعل التواصل مع قاعدة البيانات أسهل بكثير مع Eloquent. عند العمل مع Eloquent Relationships، عند استدعاء المتغيرات الديناميكية (باستخدام أساليب PHP السحرية )، يجب أن تدرك أن مثيلات النماذج لا تعكس التغييرات الجديدة، بل تخزنها مؤقتًا بشكل دائم في المرة الأولى التي يتم استدعاؤها.


في المثال التالي يتصرف كما هو متوقع:

6d32588c32f080ef1896633f261e1e14

يُرجع $ model-> col القيمة القديمة دائمًا حتى بعد التغيير (لأنه تم جلب القيمة مرة واحدة باستخدام Model :: find (42) ثم حفظها). إذا قمت الآن بتوجيه جدول آخر متصل بـ $ model- >epend_table ، يمكنك أن تتوقع أن ترجع مكالمته الثانية القيمة الجديدة:

6d32588c32f080ef1896633f261e1e14

هذا ليس هو الحال أيضًا ( $epend_table = $ model-> dependant_table يخزن الجدول التابع بأكمله). للحصول على قيمة حالية ، يتم استدعاء الوظيفة المحددة صراحة dependant_table ():

6d32588c32f080ef1896633f261e1e14

عودة