php - 尝试执行更新方法时,路由不支持 PUT 方法
问题描述
这就是我的代码的样子
路线:
Route::put('/articles/{$article}', 'ArticlesController@update');
控制器:
public function update($id){
$article=Article::find($id);
$article ->title = request('title');
$article->excerpt=request('excerpt');
$article->body=request('body');
$article->save();
return redirect('/articles/'. $article->id);
}
刀:
<form method="POST" action="/articles/{{$article->id}}" >
@csrf
@method('PUT')
每次我尝试提交更新时,我都会得到:
The PATCH method is not supported for this route. Supported methods: GET, HEAD.
我目前被困在这个上。
解决方案
尝试这个
<form action="/articles/{{$article->id}}" method="POST">
<input type="hidden" name="_method" value="PUT">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>
和路线
Route::put('/articles/{article}', 'ArticlesController@update');
推荐阅读
- r - 有没有办法在 R 中的多个列中识别多次匹配条件的行?
- python - 如何在python中修复“TypeError:字符串索引必须是整数”
- python - For循环确定python中列表的最小值
- r - 围绕值的固定向量聚类
- reactjs - 你如何在你的反应测试中整合登录状态?
- javascript - 通过 jQuery prepend 加载图像但在其他图像加载之后
- reactjs - 如何使按钮 1 onClick 在 React 中启用禁用的按钮 2?
- azure - 如何在 Azure 集成运行时机器上安装 ODBC 驱动程序?
- php - 从 url 中检索两个 GET 参数并在 PHP 中回显
- python - 在 Tensorflow 中使用镜像策略时出错