【发布时间】:2022-06-15 21:00:36
【问题描述】:
当我尝试更新我的部分名称时出现此错误:此路由不支持 PUT 方法。支持的方法:GET、HEAD。 有形式:
<form action="'sections.update" method="POST" autocomplete="off">
@csrf
@method('PUT')
<div class="form-group">
<input type="hidden" name="id" id="id" value="">
<label for="recipient-name" class="col-form-label">section name</label>
<input class="form-control" name="section_name" id="section_name" type="text">
</div>
<div class="form-group">
<label for="message-text" class="col-form-label">description</label>
<textarea class="form-control" id="description" name="description"></textarea>
</div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary">confirm</button>
<button type="button" class="btn btn-secondary" data-dismiss="modal">close</button>
</div>
</form>
那就是更新控制器
public function update(Request $request)
{
$id = $request->id;
$this->validate($request, [
'section_name' => 'required|max:255|unique:sections,section_name,' . $id,
'description' => 'required',
], [
'section_name.required' => 'section name is required',
'section_name.unique' => 'section_name should be unique',
'description.required' => 'description is required',
]);
$sections = sections::find($id);
$sections->update([
'section_name' => $request->section_name,
'description' => $request->description,
]);
session()->flash('edit', 'the section is edited successfully');
return redirect('/sections');
}
【问题讨论】:
-
action="'sections.update"无效。你的意思是action="{{ route('sections.update') }}"?