还记得最开始报错的吗?
Method [validateRequire] does not exist.
原因很简单:
因为把判读条件
required 写成了 require 少了一个d。 所以就变成了这个样子。
我们现在 TaskController 控制器里面的 代码已经变成
public function store(Request $request){
$this->validate($request, [
'name' => 'required|max:255',
]);
}
现在这样,很明显没有插入数据库的功能,怎么办?加呗!哈哈!
public function store(Request $request){
$this->validate($request, [
'name' => 'required|max:255',
]);
$request->user()->tasks()->create([
'name'=>$request->name,
]);
redirect('/tasks');
}
说明: 上面的 user() 方法,返回的是 App\User 模型的实例化, 然后在 这个模型里面有一个关系型函数 tasks() ,这个函数 返回的是 Task模型的实例化,
这样 就启动了 我们的 Task 模型,的 create() 方法。
刷新,继续新的错误
MassAssignmentException in Model.php
这样的错误:集合忽视错误,想起来,我们的 laravel 还有个神器的地方 就是 fillable 控制的数组,修改一下
protected $fillable = ['name'];
刷新,在我们的 app\Task 里面添加了 这个字段。
然后刷新,在查看数据库,发现了,有了新的数据,神奇阿!成功插入了!