PATCH 메소드는 역할 경로에 액세스할 수 없습니다. GET, HEAD, POST 방식만 지원
P粉986028039
2023-08-15 19:45:00
<p>spatie laravel을 사용하여 역할과 권한을 생성하고 싶습니다. 오류로 인해 캐릭터를 편집할 수 없습니다: </p>
<인용문>
<p>PATCH 방식의 역할 라우팅은 지원되지 않습니다. 지원되는 방법은 GET, HEAD, POST입니다. </p>
</인용문>
<p><strong>컨트롤러: </strong></p>
<pre class="brush:php;toolbar:false;">공개 함수 편집(string $id)
{
$role = 역할::find($id);
$permission = 권한::get();
$rolePermissions = DB::table("role_has_permissions")->where("role_has_permissions.role_id",$id)
->pluck('role_has_permissions.permission_id','role_has_permissions.permission_id')
->모두();
return view('roles.edit',compact('role','permission','rolePermissions'));
}
공개 함수 업데이트(요청 $request, 문자열 $id)
{
$this->validate($request, [
'이름' => '필수',
'허가' => '필수',
]);
$role = 역할::find($id);
$role->name = $request->input('이름');
$역할->저장();
$role->syncPermissions($request->input('permission'));
return 리디렉션()->route('roles.index')
->with('성공','역할 업데이트 성공');
}</pre>
<p><strong>블레이드 템플릿:</strong></p>
<pre class="brush:php;toolbar:false;"><form action='{{ url('roles/') }}' method='post'>
@csrf
@method('PUT')
<div class="my-3 p-3 bg-body 둥근 그림자-sm">
<a href='{{ url('roles') }}' class="btn btn-secondary">반품</a>
{!! 양식::model($role, ['method' => 'PATCH','route' => ['roles.update', $role->id]]) !!}
<div class="mb-3 행">
<label for="permission" class="col-sm-2 col-form-label">권한</label>
<div class="col-sm-10">
{{-- <input type="text" class="form-control" name='permission' value="{{ $role->permission }}" id="permission">
{!! Form::text('name', null, array('placeholder' => 'name','class' => 'form-control')) !!}
</div>
</div></pre>
<p><strong>路由:</strong></p>
<pre class="brush:php;toolbar:false;">Route::group(['middleware' => ['auth']], function() {
경로::resource('관리자', adminController::class);
경로::resource('produk', produkController::class);
경로::resource('roles', roleController::class);
});</pre>
<p><br /></p>
편집 보기에서 HTML 형식으로
으아악@method('PUT')
指令。通常情况下,PUT
方法用于在RESTful API中更新资源,Laravel会自动将其视为PATCH
요청을 추가하세요.