I'm looking at routing in Lumen and it doesn't appear to be working correctly and I can't work out if it's an issue or my understanding.
$router->get('{adaptor}[/{id}]', ['uses' => 'MyController@readAction']);
This way works, but I'd prefer to use a prefix to group all my routes:
$router->group(['prefix' => '{adaptor}'], function () use ($router) {
$router->get('[/{id}]', ['uses' => 'MyController@readAction']);
// CRUD routes to be added here
});
If I go to /acme
I get MethodNotAllowed Exception, but if I add /acme/1
it works fine. Does a prefix NEED another route item for it to work?
The route: { path: 'list/:name/:type', loadChildren: './list/list. module#ListModule'}, The :name parameter is required for this route to load correctly, but the :type parameter is optional.
Route parameters are named URL segments that are used to capture the values specified at their position in the URL. The captured values are populated in the req. params object, with the name of the route parameter specified in the path as their respective keys.
Route Prefixes The prefix method may be used to prefix each route in the group with a given URI. For example, you may want to prefix all route URIs within the group with admin : Route::prefix('admin')->group(function () { Route::get('/users', function () { // Matches The "/admin/users" URL.
A prefix will need another route item in order for it to work correctly.
https://lumen.laravel.com/docs/5.4/routing#route-parameters
Optional parameters are only supported in a trailing position of the URI.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With