Le routing dans laravel

Route prenant un paramètre

Mais vous voudriez aussi gérer le cas où le paramètre eput être optionnel, dans ce cas créer les deux routes (un avec et un sans)

Route::get('/products','ProductController@getProducts');

Route::get('/products/{type}','ProductController@getProducts')->named('produits');

Ensuite dans le controller gérez le paramètre optionnel

    public function getProducts($type = 'chemise'){
        $product = DB::table('products')
            ->where('type','=',$type)
            ->where('status','=','1')
            ->get()
            ->toArray();
        return response()->json([$product][0]);
    }

Ainsi si vous passez la route '/products', vous aurez les chemises, et si vous passez la route '/products/pantalon' vous aurez les pantalons, de même '/products/chemise' vous renverra aussi les chemises.

Retour en haut