متى ولماذا استخدم هذا السطر في ال 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
اعتذر لست مختصا بترجمة الكلمات التقنية
اسأل @Abd_Allatif_Ey ربما يساعدك.
يقصدون حفظ كتلة من البيانات مباشرة دون تفقدها قيمة قيمة، فالمستخدم يرسلها ويتم حفظها بالمودل بسطر واحد ويتم تحديد الصالح منها والغير صالح بالخاصيتين fillable و guarded
كذلك تحديد البيانات مرجعة في json response لذا فغالبيا تجد حقل password في مصفوفة guarded لأنه من غير المعقول أن تظهر باسورد مستخدم في response عند الاستعلام عنه لذا يتم إخفاءه بإدراجه في مصفوفة guarded
التعليقات