Каким образом сделать префикс RU локали по умолчанию, чтобы не отображалась в строке поиска?
Роут, который принимает префикс. Допустим, у нас это могут быть языки RU, EN.
Route::group(['prefix' => '{locale?}', 'middleware' => SetLocale::class], function () {
Route::get('/', [PageController::class, 'home'])->name('home');
Route::get('/contacts', [PageController::class, 'contacts'])->name('contacts'); });
Далее middleware, который устанавливает локаль.
$locale = $request->segment(1);
if ($locale == 'ru' || $locale == 'en')
{
App::setLocale($locale);
} else {
\abort(404);
}
URL::defaults(['locale' => '']);
return $next($request);
Если перейти по роуту ru/contacts; en/contacts - все хорошо работает. Но не нужно, например, чтобы RU локаль была в строке. То есть ru/contacts => /contacts. А en/contacts => en/contacts всегда.
И здесь у меня на уме только появляется вариант редиректа с локали RU, и дублирования списка роутов без префикса для RU.
Кто-нибудь делал что-то подобное?