Присвоєння маси - це процес надсилання масиву даних, який буде збережений у вказаній моделі відразу. Загалом, вам не потрібно зберігати дані на своїй моделі по одному, а скоріше в одному процесі.
Масове призначення добре, але за ним стоять певні проблеми із безпекою. Що робити, якщо хтось передає значення моделі та без захисту, вони можуть точно змінити всі поля, включаючи ідентифікатор. Це не добре.
Скажімо , у вас є таблиця "студенти, з полями « student_type, first_name, last_name » . Ви можете масовий правонаступник" first_name, last_name " , але ви хочете , щоб захистити student_type від того , безпосередньо змінилися. Ось де заливка і охороняв місце.
Подача даних дає змогу вказати, які поля масово призначаються у вашій моделі, ви можете це зробити, додавши $fillable
до моделі спеціальну змінну . Отже, у моделі:
class Student extends Model {
protected $fillable = ['first_name', 'last_name']; //only the field names inside the array can be mass-assign
}
тип ' student_type ' не включений, а це означає, що вони звільнені.
Охороняється - реверс заповнення. Якщо заповнюється вказує, яким полям слід присвоїти масу, захищений вказує, які поля не можна присвоювати масі. Отже, у моделі:
class Student extends Model {
protected $guarded = ['student_type']; //the field name inside the array is not mass-assignable
}
ви повинні використовувати або $ fillable, або $ guarded - не обидва.
Для більш детальної інформації відкрийте посилання: - масове призначення