Я занимаюсь разработкой веб-сайта на основе компонентов Symfony 4 (а не всей платформы).Интересно, каковы лучшие практики для реализации многоязычной маршрутизации с Symfony 4. В нынешнем виде я использую реализацию PHP-маршрутизации следующим образом:
$routes->add('product_show', new Routing\Route('/{_locale}/{shop_slug}/{product_slug}',
array(
'_controller' => 'product_controller::show'
),
array(
'_locale' => implode("|", array('en', 'fr', 'de')),
'shop_slug' => implode("|", array('shop', 'boutique', 'geschaft', 'winkel'))
)
));
Но пока работа выполняетсяне позволяет мне специально связать shop_slug 'shop' с локалью 'en'.Все следующие URL-адреса действительны для этой маршрутизации (замените ... на любой product_slug):
- / en / shop / ... -> success
- / en / geschaft/ ... -> успех
- / ru / boutique / ... -> успех
- / de / shop / ... -> успех
- / de /geschaft / ... -> success
- / de / boutique / ... -> success
- и т. д ...
Я бы хотел соответствоватьследует:
- / ru / shop / ... -> success
- / de / geschaft / ... -> success
- / fr / boutique /... -> успех
- / ru / geschaft / ... -> 404
- / fr / geschaft / ... -> 404
- / en / boutique/ ... -> 404
- и т. Д.
Возможно ли это с маршрутизацией или я должен самостоятельно аннулировать неправильные комбинации в контроллере?