سؤال في ال Laravel

متى ولماذا استخدم هذا السطر في ال Model بلأخص ال fillable$ :

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Flight extends Model

{
protected $fillable = ['name'];
}

ولماذا نضع أحياناً أكثر من عنصر, مثلاً :

protected $fillable=['title','body'];

هذه الخاصية اذا أردت استخدام mass assignment في مودل

يعني بدل عمل نسخة لمودل واسناد كل قيمة الى خاصية مودل فانت تسندها مباشرة

فبدل ان تكتب :

$model = new Model()

$model->prop1=$val1

$model->prop2=$val2

....

$model->save()

تكتب مباشرة هكذا وتسندها الى constructor المودل

Model::create(['prop1'=>$val1,'prop2'=>$val2)

مع العلم أنه كافة الخصائص التي تريد اسناد قيم اليها في construct يجب تعريفها في مصفوفة في مودل في الخاصية $fillable

للاستزادة

اذا كان لديك اي سؤال فلا تتردد في طرحه

بالتوفيق

شكراً لك, طيب سؤال آخر لو سمحت,ما هي ترجمة هذه العبارة mass assignable وماذا يعنوا بها Laravel ؟

ما هي ترجمة هذه العبارة mass assignable

اعتذر لست مختصا بترجمة الكلمات التقنية

اسأل @Abd_Allatif_Ey‍  ربما يساعدك.

يقصدون حفظ كتلة من البيانات مباشرة دون تفقدها قيمة قيمة، فالمستخدم يرسلها ويتم حفظها بالمودل بسطر واحد ويتم تحديد الصالح منها والغير صالح بالخاصيتين fillable و guarded

كذلك تحديد البيانات مرجعة في json response لذا فغالبيا تجد حقل password في مصفوفة guarded لأنه من غير المعقول أن تظهر باسورد مستخدم في response عند الاستعلام عنه لذا يتم إخفاءه بإدراجه في مصفوفة guarded

نعم فعلاً هذا مالاحظته في أمر ال guarded , بدأت تتوضح الفكرة عندي شكراً لك.