Я получаю эту ошибку:
Исключение MassAssignmentException в строке модели 448 модели: _token
- Работа с зашифрованными файлами в Laravel (как загрузить дешифрованный файл)
- Как передать аргументы от маршрутизатора к промежуточному программному обеспечению в laravel 5?
- Laravel 5.1 Изменить входные данные перед проверкой запроса формы
- Как добавить таблицу стилей для подтверждения?
- Laravel 5 '..failed to open stream: Permission denied' exception при подключении к localhost
Когда я использую метод create
. Пожалуйста, ознакомьтесь со следующим кодом:
Contacts.php (модель):
class Contacts extends Model { protected $table = ['name', 'mobile', 'email', 'address', 'created_at', 'updated_at']; }
ContactsController.php (контроллер):
public function store(Request $request) { $inputs = $request->all(); $contacts = Contacts::Create($inputs); return redirect()->route('contacts.index'); }
Для исключения массового присваивания : вы должны указать все поля модели, которые вы хотите назначить массе, посредством операций создания или обновления свойства $fillable
:
protected $fillable = ['name', 'mobile', 'email', 'address', 'created_at', 'updated_at'];
Кроме того, поле $table
должно содержать только имя таблицы модели:
protected $table = 'your_table_name';
Это может произойти в случае, если вы использовали неправильно импортированный класс. если вы используете модель пользователя.
Неправильный импорт
// mostly IDE suggestion use Illuminate\Foundation\Auth\User;
Правильный импорт модели
use App\User;
Я прошел через это. может помочь кому-то.
Вы можете заполнять все столбцы:
protected $guarded = array();
Добавьте свою модель.
Если все вышеперечисленное не удается, вы можете попробовать следовать.
Поместите следующее после пространства имен.
use Eloquent;
Поставьте следующее в начале вашего метода store
.
Eloquent::unguard();
как:
public function store(Request $request) { Eloquent::unguard(); $inputs = $request->all(); $contacts = Contacts::Create($inputs); return redirect()->route('contacts.index'); }
Это не рекомендуется, так как это делает вещи уязвимыми для атак. Но если вам нужно быстрое исправление, это может помочь.