Kaedah PATCH tidak dibenarkan untuk mengakses laluan peranan. Hanya menyokong kaedah GET, HEAD dan POST
P粉986028039
2023-08-15 19:45:00
<p>Saya mahu menggunakan spatie laravel untuk mencipta peranan dan kebenaran. Saya tidak dapat mengedit aksara saya kerana ralat: </p>
<blockquote>
<p>Peranan penghalaan kaedah PATCH tidak disokong. Kaedah yang disokong ialah: GET, HEAD, POST. </p>
</blockquote>
<p><strong>Pengawal: </strong></p>
<pre class="brush:php;toolbar:false;">edit fungsi awam(rentetan $id)
{
$role = Peranan::find($id);
$permission = Kebenaran::get();
$rolePermissions = DB::table("role_mempunyai_permissions")->where("role_has_permissions.role_id",$id)
->pluck('role_mempunyai_permissions.permission_id','role_mempunyai_permissions.permission_id')
->semua();
return view('role.edit',compact('role','permission','rolePermissions'));
}
kemas kini fungsi awam (Permintaan $permintaan, rentetan $id)
{
$this->validate($request, [
'name' => 'diperlukan',
'permission' => 'diperlukan',
]);
$role = Peranan::find($id);
$role->name = $request->input('name');
$role->save();
$role->syncPermissions($request->input('permission'));
return redirect()->route('roles.index')
->dengan('berjaya','Kemas kini peranan berjaya');
}</pre>
<p><strong>Templat bilah:</strong></p>
<pre class="brush:php;toolbar:false;"><form action='{{ url('role/') }}' method='post'>
@csrf
@method('LETAK')
<div class="my-3 p-3 bg-body rounded shadow-sm">
<a href='{{ url('peranan') }}' class="btn btn-secondary">Kembali</a>
{!! Borang::model($role, ['kaedah' => 'PATCH','route' => ['role.update', $role->id]]) !!}
<div class="mb-3 row">
<label for="permission" class="col-sm-2 col-form-label">Kebenaran</label>
<div class="col-sm-10">
{{-- <input type="text" class="form-control" name='permission' value="{{ $role->permission }}" id="permission">
{!! Borang::teks('nama', null, tatasusunan('pemegang tempat' => 'nama','kelas' => 'kawalan borang')) !!}
</div>
</div></pra>
<p><strong>路由:</strong></p>
<pre class="brush:php;toolbar:false;">Route::group(['middleware' => ['auth']], function() {
Route::resource('admin', adminController::class);
Route::resource('produk', produkController::class);
Route::resource('roles', roleController::class);
});</pre>
<p><br /></p>
Tambah
@method('PUT')
指令。通常情况下,PUT
方法用于在RESTful API中更新资源,Laravel会自动将其视为PATCH
permintaan dalam bentuk HTML dalam paparan edit.