我正在学习 Laravel,练习做一个加载文档的项目(杂项)。
我已经开始执行更新文档的过程了。当我单击该按钮时,我收到消息“此操作未经授权”,但我没有激活或创建任何权限策略。我不知道这是什么原因。
Routes
Route::get('/document/{document}/edit', [DocumentController::class, 'edit'])->name('document.edit');
Route::put('/document/{document}/edit', [DocumentController::class, 'update'])->name('document.update');
在第一个路线中,我显示了表单,在第二个路线中,我创建了更新它的逻辑。
public function edit(Document $document)
{
return view('document.form-document-edit', [
'document' => $document,
'users' => User::all()
]);
}
public function update(UpdateDocumentRequest $request, Document $document)
{
return "update method is called";
我将返回值放入更新方法中,以了解它是否会向我显示此消息,但它从未向我显示返回值。我真的不知道该怎么办了,因为我一事无成。
我希望能得到一些帮助来理解这背后的原因。
这可能是因为在你的
UpdateDocumentRequest
中你没有设置授权方法返回true
:
public function authorize(): bool {
return true; // change this to true, by default it's false
}