Здравствуйте! Не могу понять по какой логике строится защита от массовых назначений в Laravel, в документации вроде ничего об этом не сказано или я что-то не так понимаю.
Вот, например, три примера:
Пример 1:
Order::create([
'field' => 10,
'field2' => 15,
]);
Пример 2:
Order::whereKey([1, 2])->update([
'field' => 10,
'field2' => 15,
]);
Пример 3:
Order::find(1)->update([
'field' => 10,
'field2' => 15,
]);
В итоге пример 1 и 3 не срабатывают (как и ожидалось т.к. поля не разрешены для массовых назначений), а вот второй прекрасно отрабатывает, почему? И при каких вариантах еще она не будет работать при использовании моделей?