Laravel 5:Model.php中的MassAssignmentException

San*_*eep 22 php mass-assignment laravel eloquent laravel-5

我收到此错误:

Model.php第448行中的MassAssignmentException:_token

当我使用create方法时.请查看以下代码:

Contacts.php(型号):

class Contacts extends Model
{
    protected $table = ['name', 'mobile', 'email', 'address', 'created_at', 'updated_at'];
}
Run Code Online (Sandbox Code Playgroud)

ContactsController.php(Controller):

public function store(Request $request)
{        
    $inputs = $request->all();
    $contacts = Contacts::Create($inputs);
    return redirect()->route('contacts.index');
}
Run Code Online (Sandbox Code Playgroud)

Mop*_*ppo 87

对于批量分配例外:您应该通过属性上的创建或更新操作指定要通过批量分配的模型的所有字段$fillable:

protected $fillable = ['name', 'mobile', 'email', 'address', 'created_at', 'updated_at'];
Run Code Online (Sandbox Code Playgroud)

此外,该字段$table应仅包含模型的表名:

protected $table = 'your_table_name';
Run Code Online (Sandbox Code Playgroud)


sha*_*e93 5

如果您使用了错误导入的类,则可能会发生这种情况。如果您正在使用用户模型。

导入错误

// mostly IDE suggestion
use Illuminate\Foundation\Auth\User;
Run Code Online (Sandbox Code Playgroud)

正确导入模型

use App\User;
Run Code Online (Sandbox Code Playgroud)

我经历了这个。可能会帮助某人。


Fer*_*ÇER 5

您可以将所有列填充:

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

添加您的模型。