Main App Routes:
Route::get('/login', [
'as' => 'user.login',
'uses' => 'LoginController@login'
];
Route::get('/logout', [
'as' => 'user.logout',
'uses' => 'LoginController@logout'
];
Route::get('/admin', [
'as' => 'admin.index',
'uses' => 'AdminController@index'
];
I have a package (vendor) (example : metrakit/mypackage) with a routes.php file. In this file I have a route :
Route::get('/{slug}', [
'as' => 'item.show',
'uses' => 'ItemController@show'
];
This route overload all my main routes ! My routes like "/login", "/logout", "/bob", ... are all redirected to my controller ItemController.
I don't want to have a route like
Route::get('/item/{slug}', array('as' => 'item.show', 'uses' => 'ItemController@show');
I thinks, I have to do a route pattern like this :
Route::pattern('slug', '^((?!(login|logout|admin)).)*$');
But it looks a bit dirty and it's not dynamic.
So Im searching about a better solution.