Php 使用补丁方法,不更新记录(curd操作)

Php 使用补丁方法,不更新记录(curd操作),php,laravel-5,Php,Laravel 5,我已成功插入、读取并删除了记录,而 正在执行基本的凝乳操作。现在我正在尝试更新/编辑记录 已成功插入到数据库中。但记录未被删除 更新单击更新按钮后,将按原样显示上一条记录 route.php Route::get("edit/{id}" , "testing@edit"); Route::patch("update/{id}" , "testing@update"); testing.php // this is edit function public function edit($id

我已成功插入、读取并删除了记录,而 正在执行基本的凝乳操作。现在我正在尝试更新/编辑记录 已成功插入到数据库中。但记录未被删除 更新单击更新按钮后,将按原样显示上一条记录

route.php

Route::get("edit/{id}" , "testing@edit");
Route::patch("update/{id}" , "testing@update");
testing.php

// this is  edit function

public function edit($id)
{
    $user=curd::find($id);
    return view("update",compact("user"));
}

// this is update function


public function update(Request $request, $id)
{
    $user = curd::find($id);
    $user->update(Request::all());
    return redirect("read");
}
update.blade.php

 <html>
  <head>

      <title>update</title>
  </head>
<body>
<!-- Here We Use Patch Method  !-->

{{Form::model($user,['method'=>'patch', 'action'=> 
['testing@update',$user->id]])}}

{{Form::label('name','name')}}
{{Form::text('Name')}}

{{Form::submit('Update')}}
{{Form::close()}}


</body>

</html>

更新
{{Form::model($user,['method'=>'patch','action'=>
['testing@update“,$user->id]])}
{{Form::label('name','name')}
{{Form::text('Name')}
{{Form::submit('Update')}
{{Form::close()}}

为什么要使用修补程序更新内容

由于拉威尔

HTML表单不支持放置、修补或删除操作。那么,什么时候 定义从HTML调用的放置、修补或删除路由 表单中,您需要向表单中添加一个隐藏的_方法字段。这个 与_method字段一起发送的值将用作HTTP请求 方法

由于有更多关于为什么在
标签中不允许PUT、DELETE和PUSH的资源

我认为更容易理解为什么表单标签只允许get、POST HTTP请求

GET和POST具有明确的内容中立的基本原理。得到的是 以可以安全重复和删除的方式检索URL的内容 可能是缓存。POST是以一种不安全的方式来做某事 重复、推测执行或缓存

“放”或“删除”没有类似的理由。他们都是 完全被邮递所覆盖。创建或销毁资源是必要的 重复和执行不安全的操作 推测性的,不应该缓存。没有额外的限制 它们需要特殊的语义

所以基本上没有好处


我仍然面临这个问题,更新功能并没有更新记录,它仍然按原样显示以前的记录。