Метод УДАЛЕНИЯ не поддерживается для этого маршрута. Поддерживаемые методы: POST

#php #laravel

#php #laravel

Вопрос:

Я редактирую скрипт Laravel. Я хочу добавить опцию формы в панели администратора, я ввел эти коды: для маршрута:

 Route::post('order-check/edit-order', [
'as' => 'admin.orders.details.change',
'uses' => 'OrderStatusController@change',
'middleware' => 'can:admin.orders.index',
 ]);
  

OrderStatusController:

 public function change(Request $request){
    $validatedData = $request->validate([
        'id' => 'required',
        'address' => 'required',
        'city' => 'required',
        'state' => 'required',
    ]);
    
    $order = Order::findOrFail($request->id);       
    $order->billing_address_1 = $request->address;
    $order->billing_city = $request->city;
    $order->billing_state = $request->state;
    $order->save();
    return back()
        ->withInput()->withSuccess('OK');  
}
  

И файл ресурсов:

 <form method="POST" action="{{ route('admin.orders.details.change') }}">
<input name="id" value="{{ $order->id }}" hidden>
<input name="address" value="{{$order->address}}">
<input name="city" value="{{$order->city}}">
<input name="state" value="{{ $order->state }}">
<button type="submit">
  

В этом файле ресурсов я уже сжал переменную $order.
Теперь, когда я нажимаю на кнопку,

Метод УДАЛЕНИЯ не поддерживается для этого маршрута. Поддерживаемые методы: POST.

появляется ошибка, но я вообще не использовал метод удаления

Комментарии:

1. ваш вопрос очень запутанный .. пожалуйста, уточните .. но удалите ‘middleware’ => ‘can:admin.orders.index’ из файла маршрута .. затем проверьте

2. это не было исправлено

Ответ №1:

вам нужно добавить @csrf между тегом формы @csrf

Комментарии:

1. Я добавил его, но это не было исправлено