gpt4 book ai didi

Laravel 5 方法未找到异常

转载 作者:行者123 更新时间:2023-12-02 14:56:06 24 4
gpt4 key购买 nike

我使用 Laravel 5 并尝试更新表单:

 {!! Form::model($user, ['route' => ['edit', $user->id], 'method' => 'PUT']) !!}

{!! Form::label('titel', 'First Name:'!!}
{!! Form::text('titel', null,) !!}


<button type="submit">Update</button>
{!! Form::close() !!}

我的路线:

Route::post('edit/{id}', ['as' => 'edit', 'uses' => 'UserController@editUser']);

我的 Controller :

public function editUser($id){};

当单击更新按钮时,我在 RouteCollection.php 中收到 MethodNotAllowedHttpException

我检查了浏览器源代码,发现我使用的 Form::model(..) 生成了以下输出:

<form method="POST" action="http://localhost/myProject/public/edit/1" accept-charset="UTF-8"><input name="_method" type="hidden" value="PUT"><input name="_token" type="hidden" value="4nZlyfzzAZmTcZfThQ8gcR6cgEgYgR0ip0JZTKck">

表单内有属性 method="POST",隐藏输入有属性 value="PUT"。这对我来说似乎不正确。有任何想法吗?谢谢

最佳答案

您应该使用“更新”路由来实际保存数据(验证并将其保存到数据库)。 “编辑”路线是您用来生成编辑表单的路线。

您应该使用 PUT 方法来运行保存数据的方法。

此外,这里有一个小提示给您。了解 RESTful Controller 的工作原理。它们确实是完成您在这里所做的事情的简单方法(确实值得学习它们): https://laravel.com/docs/5.1/controllers

关于Laravel 5 方法未找到异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35535027/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com