我有一个简单的IsolatedQuery模型,它由namequery字段组成。我在模型的$fillable属性中定义了这两个字段。isolatedquerycontroller@store如下所示:

public function store(IsolatedQueryRequest $request)
{
    IsolatedQuery::insert($request->all());

    session()->flash('flash_message', 'Isolated Query succesvol opgeslagen');

    return redirect('iq');
}

为了完整起见,这里是模型的源代码(正如我所描述的那样少)
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class IsolatedQuery extends Model
{
    protected $fillable = [
        'name',
        'query'
    ];
}

IsolatedQueryRequest只需要用任何值填充namequery
当使用给定的名称和查询值调用store方法时,我得到错误:SQLSTATE[42S22]: Column not found: 1054 Unknown column '_token' in 'field list'
很明显,_token字段会随请求一起发送,但我有点困惑,为什么它会尝试将它与实际的sql查询一起存储,因为它没有列在$fillable数组中。
为什么要分配质量?

最佳答案

使用查询生成器的方法insert。它不会检查fillable。你应该使用口才的createupdate方法。请阅读documentation
此外,您可以将输入数据传递给雄辩的constructfill方法。之后,您可以使用save方法。

10-06 08:27