我在发布模型绑定表单时在laravel资源路径上获得404状态代码。表单开头标记如下:
{!!Form::model($project, ['route' => ['admin.projects.update', $project->id], 'method' => 'PUT', 'files' => true])!!}
//Form content here
{!! Form::close() !!}
路由下显示的资源路由:list是:
+--------+----------+-----------------------------------+-------------------------+------------------------------------------------------------------+------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+-----------------------------------+-------------------------+------------------------------------------------------------------+------------+
| | PUT | admin/projects/{projects} | admin.projects.update | App\Http\Controllers\Admin\AdminProjectsController@update | |
和控制器:
public function update(CreateProjectRequest $request, $id)
{
$data = $request->all();
$project = Project::findOrFail($id);
$project->update($data);
return redirect('admin/projects/edit/all');
}
当我检查devtools中的响应时,附加了有效负载并且路由URL是正确的。例如,如果我要更新ID为150的项目,则网址为
http://localhost:8888/project-name/public/admin/projects/150
如果我不进行任何更改,则控制器的重定向会起作用。如果我只通过表单添加文件,它也可以。当我更改文本输入数据时,我遇到了问题。我以前从来没有使用过资源路由这个问题,经过几个小时的尝试后我就无法解决问题。
任何新鲜的眼睛都会看到我犯错的地方?
答案 0 :(得分:0)
<强> ANSWER 强>
疲倦引发了邋code的代码。我对引入原始记录数据的方法进行了两次相同的调用,稍后用于引用正在更新的记录。