Метод DELETE не поддерживается для этого маршрута с помощью laravel

Метод DELETE не поддерживается для этого маршрута с помощью laravel

25.06.2020 11:29:00 Просмотров 10 Источник

я использую laravel в своем проекте, Хочу ли я удалить назначение, но я получаю эту ошибку : метод DELETE не поддерживается для этого маршрута. Поддерживаемые методы: GET, HEAD.

Это контроллер :

    public function destroy($id)
    {
        $rdv = DB::table('rdv')->where('id',$id)->delete();
    
        return redirect()->back()->withSuccess('success delete !' ) ; 
    }
}

это и есть форма :

@if ( $getpat->Etat_de_rdv == 'en_attente') 
<td><label class="badge badge-warning"> {{$getpat->Etat_de_rdv}} </label></td>
<form method="POST" action="{{ route('delete', $getpat->id) }}">
 @method('DELETE')
 @csrf
<button type="submit">Supprimer rendez-vous</button>
</form>

это и есть паутина.РНР

 Route::get('/delete', 'rendezv@destroy')->name('delete');
У вопроса есть решение - Посмотреть?

Ответы - Метод DELETE не поддерживается для этого маршрута с помощью laravel / The DELETE method is not supported for this route with laravel

Является ответом!
A.A Noman

25.06.2020 11:33:41

Так и должно быть

Route::delete('/delete/{id}', 'rendezv@destroy')->name('delete');
Tim Lewis

25.06.2020 11:33:59

Вы используете Route::get(), но предоставляете @method('delete'); это противоречиво. Измените свой маршрут следующим образом:

Route::delete('delete', 'rendezv@destroy')->name('delete');

Кроме того, вы не передаете параметр $id, поэтому route('delete', $getpat->id) не будет работать. Это можно сделать с помощью поля формы или параметра URL-адреса:

Route::delete('delete/{id}', 'rendezv@destroy')->name('delete');
Jonnathan Carrasco

25.06.2020 11:34:09

правильное объявление маршрута-это:

Route::delete('/delete', 'rendezv@destroy')->name('delete');
Закрыть X