首页 > 解决方案 > 如果验证失败问题,Laravel 5.6 返回请求数据

问题描述

如果创建操作的验证失败,我想将请求数据返回到字段中。我已经创建了资源控制器,并且有预设的功能(索引、创建、存储、显示、编辑、更新、销毁)。

例如,在Edit控制器中,我已经有一个记录的 ID,然后我可以通过它的 ID 从 DB 中选择记录并将其数据传递给视图,这样我就可以在页面加载时看到字段中的条目数据:

<input name="name" value="{{ $name }}" />

public function edit($id)
{
   $item = Item::find($id);
   return view('pages.item.edit')->with($data);
}

但是在Create控制器中,我没有任何项目 ID 来获取和传递字段的条目数据。

<input name="name" value="{{ old('name') }}" />

public function store(Request $request)
{
   $this->validate($request, [
      'name' => 'required|string|max:30'
   ])->withInput();
   return redirect('/items')->with('success', 'New item created!');
}

我应该->withInput()在哪里使用?{{ old('name') }}也不行。 这篇文章对我没有帮助

那么,如果验证失败,如何保存字段呢?对于Edit方法,保存修改的字段也很有用。

标签: phplaravelvalidationrequest

解决方案


推荐阅读