protected function registerPatterns() { Route::pattern('adminModelId', '[0-9]+'); Route::pattern('adminModel', implode('|', Admin::modelAliases())); Route::bind('adminModel', function ($model) { $class = array_search($model, Admin::modelAliases()); if ($class === false) { throw new ModelNotFoundException(); } return Admin::model($class); }); Route::pattern('adminWildcard', '.*'); }