ببعض الأحيان نحتاج للتعديل على البيانات التي تأتي من الحقول قبل إدخالها إلى قاعدة البيانات، وببعض الأحيان نحتاج للتعديل على البيانات التي تأتي من قاعدة البيانات قبل عرضها.
هنا نحتاج لمعرفة المفهومين Accessories & Mutators.
Accessories: هو التعديل على البيانات التي تأتي من قاعدة البيانات قبل عرضها.
مثلا لفرض أن لدينا الجدول كما بالصوره أدنا وهو مرتبط بالموديل Student ونحن نريد أن نعرض الإسم الكامل في في عمود وليس الإسم الأول في عمود والإسم الثاني في عمود أخر
للقيام بذلك بداخل Student Model نستخدم Accessories.
class Student extends Model{ public function getFullNameAttribute() { return $this->fname . ' ' . $this->lname; } }
وفي صفحة blade.
<td>{{ $student->full_name }}</td>
طريقة كتابة Accessories يجب أن تبدأ بكلمة get ثم إسم الدالة ويجب أن تكون CamelCase كما أعلاه (FullName) ومن ثم Attribbute.
Mutators: لفرض أن لدينا هذا الفورم لإدخال البيانات لقاعدة البيانات، لكن نريد أن يتم الإدخال بشكل CamelCase.
للقيام بذلك نقوم بكتابة Mutator في Student Model.
public function setFnameAttribute($value){ $this->attributes['fname'] = ucfirst($value); }
كما نلاحظ أعلاه أن Mutators يجب أن تبدأ بـ set ثم إسم الحقل ثم attribute.
لعمل ذلك مع الإسم الأخير.
public function setLnameAttribute($value){ $this->attributes['lname'] = ucfirst($value); }
اعتقد ممكن نعمل بيها عمليات كتير ع البيانات من تجميع و فرز و غيرها
ممتاز جزاك الله خير اتمنى ان حضرتك تكمل شرح بنفس هذه الطريقة للحجات الادفانس
لو عايز اعمل Return html Ex: return \'ok ايه الحل
دهب أمحر
good I like this content
جابر الشيمي
ما شاء الله ربنا يبارك لك