Laravel's nieuwe `missing()` methode in de router

Laravel's nieuwe `missing()` methode in de router

Met de release van Laravel v8.26.0 komt de router met een nieuwe toevoeging missing().
Deze methode laat je op een makkelijk manier ontbrekende records afvangen als je gebruik maakt van route model binding. Lees Route Model Binding als je hier nog niet bekent mee bent.

Standaard geeft de router een 404 error als iemand een niet-bestaand record wil opvragen.
Om dit vervolgens netjes af te handelen binnen je webapplicatie is hier custom code voor nodig.
Met de toevoeging van missing() wordt dit een stuk eenvoudiger.

Route::get('/users/{user}', [UserController::class, 'show'])
     ->name('users.view')
     ->missing(function (Request $request) {
         return Redirect::route('users.index');
     });

De missing() functie werkt ook correct wanneer je gebruik maakt van route-caching.
Op deze manier kan je heel makkelijk afvangen wanneer de router een ModelNotFound exception throwed.

Het zijn dit soort toepassing die Laravel zo fijn maken om mee te werken!
Lees hier de Laravel documentatie hierover: klik.

Michael v.d. Rijt Michael v.d. Rijt Laravel expert Contact opnemen 013 - 20 321 13
Delen op social media
Vorige blog Shopware 6 handleiding: Het producten overzicht