我有个问题,我有一个表单(视图(,提交后保存到数据库。其中一条记录是id。当我再次打开该ID的表单并再次按提交时会发生什么?它会更新记录吗?或者尝试创建一个新记录,但由于id是主键而失败?
如果您试图根据它的id
更新记录,那么您可以执行此
public function update($request)
{
$user = User::firstOrNew([
'id' => $request->id
]);
$user->first_name = $request->first_name;
$user->last_name = $request->last_name;
$user->save();
}
它将找到一个具有该id
的记录,如果没有找到,则创建一个具有id
的新记录。这只是一个例子,但在更新/插入之前,您需要validate
每个请求。
所以这取决于你的控制器等。如果你有一个带有正确代码的updateController,它可以更新,但你也需要一个编辑方法。如果你可以共享你的代码,那么说会发生什么将更容易,而不是猜测
public function store(Request $request)
{
$this->validate($request,[
'name' => 'required|unique:categories',
]);
$category = new Category();
$category->name = $request->name;
$category->slug = str_slug($request->name);
$category->save();
Toastr::success('Category Successfully Save','Success');
return redirect()->route('admin.category.index');
}