[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
THIAGO DUARTE QUIRINO
Criador THIAGO DUARTE QUIRINO 11/04/2021

Olá, Carlos tudo bom?

 Tem como me ajudar com esse erro? Estou enviando uma edição via axios com o verbo PUT e api do laravel me retorna isso.

405 (Method Not Allowed)

message: "The PUT method is not supported for this route. Supported methods: GET, HEAD."

Criador THIAGO DUARTE QUIRINO 11/04/2021

O problema esta Route::apiResource

 

Quando rodo o comando php artisan route:list, o resultado fica assim

api/v1/admin/menus/{}

E não tem o parametro apenas os cochetes, quando coloquei a rota manualmente colocando o os verbos e passando os parametros funcionou normal

Route::match(['put', 'patch'],'/{uuid}',[TDMenusApiController::class,'update'])->name('admin.menus.update');

Quando rodo o comando php artisan route:list, o resulta fica assim

api/v1/admin/menus/{uuid}

 

Estou usando o laravel 8

Isso esta correto a afirmar?

THIAGO DUARTE QUIRINO
Manager Carlos Ferreira 11/04/2021

Olá, Thiago!
Tudo bem?

Antes de atualiza, como estava?
Me dá mais detalhes que te ajudo a resolver.

Não vejo problemas nessa implementação:
Route::match(['put', 'patch'],'/{uuid}',[TDMenusApiController::class,'update'])->name('admin.menus.update');

Carlos Ferreira
Criador THIAGO DUARTE QUIRINO 11/04/2021

Tudo certo sim, antes de mudar para a forma manual de implentação estava usando resource, 

segue forma que do antes e depois.

//Administração
    Route::prefix('admin')->group(function () {
/* Antes estava assim!!!
Route::prefix('empresas')->group(function () {
            Route::apiResource('/'TDEmpresasApiController::class);
        });*/
        //Routes dos menus Atual
        Route::prefix('menus')->group(function () {
            Route::post('/', [TDMenusApiController::class'store'])->name('admin.menus.store');
            Route::match(['get''head'], '/', [TDMenusApiController::class'index'])->name('admin.menus.index');
            Route::match(['get''head'], '/{filters}', [TDMenusApiController::class'show'])->name('admin.menus.show');
            Route::match(['put''patch'], '/{uuid}', [TDMenusApiController::class'update'])->name('admin.menus.update');
            Route::delete('/{uuid}', [TDMenusApiController::class'destroy'])->name('admin.menus.destroy');
        });
    });

 

 

THIAGO DUARTE QUIRINO
Manager Carlos Ferreira 11/04/2021

Que bom que conseguiu resolver. Parabéns amigo!

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!