Вместо группировки вы можете использовать параметры маршрута
у довольно простой веб-сайт для школы ... на этом сайте есть новости, статьи, видеоклипы ... и т. д.
как это работает на домашней странице, мы представляем посетителю некоторые уроки, такие как
>math
>geography
>chemistry
Пользователь выбирает 1 из них, и содержимое сайта изменяется в зависимости от выбора пользователя.
например, если пользователь выберет математику, он увидит новости, статьи, видео о математике и т. д. ... сейчас это то, что я делаю (пожалуйста, игнорируйте синтаксические ошибки)
Route::group(['prefix'=>'math'], function () {
Route::get('/news', 'NewsController@index')->name('news_index');
Route::get('/article', 'ArticleController@index')->name('article_index');
});
Route::group(['prefix'=>'geography'], function () {
Route::get('/news', 'NewsController@index')->name('news_index');
Route::get('/article', 'ArticleController@index')->name('article_index');
});
Route::group(['prefix'=>'chemistry'], function () {
Route::get('/news', 'NewsController@index')->name('news_index');
Route::get('/article', 'ArticleController@index')->name('article_index');
});
в основном повторяя все ссылки для каждого префикса .... но по мере роста ссылок это становится все более и более неуправляемым ... есть ли лучший способ сделать это? что-то вроде
Route::group(['prefix'=>['chemistry','math' , 'geography' ], function () {
Route::get('/news', 'NewsController@index')->name('news_index');
Route::get('/article', 'ArticleController@index')->name('article_index');
});
------------------------- Обновить -------------
я пробовал это
$myroutes = function () {
Route::get('/news', 'NewsController@index')->name('news_index');
Route::get('/article', 'ArticleController@index')->name('article_index');
};
Route::group(['prefix' => 'chemistry'], $myroutes);
Route::group(['prefix' => 'math'], $myroutes);
Route::group(['prefix' => 'geography'], $myroutes);
и работает нормально, проблема в том, что последний префикс привязывается ко всем внутренним ссылкам
например, если я нажму на математику
мои ссылки будут
site.com/math/news
но все ссылки на загруженной странице вроде
<a href="{{route('article_index')"> link to article </a>
выглядит как
site.com/geography/article
в основном ссылка получает последний упомянутый префикс независимо от выбранного в данный момент