【发布时间】:2020-05-21 16:06:45
【问题描述】:
我正在尝试为现有 Symfony 3 Web 应用程序中定义的路由添加翻译。我看到 Symfony 4 已经实现了这个功能*,你可以:
foo:
path:
en: contact
es: contacto
cat: contacte
(来自https://symfony.com/blog/new-in-symfony-4-1-internationalized-routing)
但是对于 Symfony 3,您似乎必须为每个语言环境配置不同的路由名称。如果可能,我需要保持路由名称相同,因为很多逻辑取决于路由名称。
我尝试使用JMSI18nRoutingBundle,但它似乎没有保持相同的路线名称。
有没有办法为不同的语言环境获取相同的路线名称并翻译它们?
【问题讨论】:
-
你的意思是像使用语言环境参数({_locale})?您可以使用相同的路由名称,但最终会使用不同的路径。 symfony.com/doc/3.4/routing.html#advanced-routing-example
-
@Jeroen 但是如何使用这种方法翻译上例中的路线?
-
有什么好的理由坚持使用 Symfony 3 而不是简单地更新到 Symfony 4?
-
@NicoHaase 是的,PHP 5
标签: symfony routes internationalization symfony-3.4