Laravel 5:当持久化表单数据时,_token会导致批量分配异常

Bre*_*nor 12 php forms laravel-5

当我尝试保存表单数据时,Laravel抛出了一个批量赋值异常.

在我正在使用的视图中{!! form::open(...) !!},我知道它创建_token为隐藏字段.

当表单数据发送到控制器时,我正在使用

$data = Input::all();
$order = Order::create($data);
$order->save();
Run Code Online (Sandbox Code Playgroud)

我应该_token在我的数据库中添加一个字段吗?或者我通过做其他错误导致错误?

luk*_*ter 28

通常会导致质量分配异常,因为您未在模型中指定fillable(或guarded相反)属性.做这个:

class Order extends Eloquent {
    protected $fillable = ['field1', 'foo', 'bar'];
}
Run Code Online (Sandbox Code Playgroud)

这样您也不必担心,_token因为只有指定的字段将被填充并保存在数据库中,无论您传递给模型的其他内容是什么.


Yas*_*ash 5

要么

protected $guarded = array();
Run Code Online (Sandbox Code Playgroud)