如何禁用特定symfony路由的翻译?

时间:2017-01-26 11:13:47

标签: php internationalization symfony

我正在开发一个国际化的symfony应用程序,其中网页的区域设置位于网址中(例如:/en/myaccount/fr/moncompte)。

我想要的是一个自定义网页,我可以通过翻译键看到未翻译的页面。此行为不应更改本地化页面的行为。

我尝试添加没有翻译文件的语言环境。但是,网站回退到默认语言环境,阻止查看翻译键。有没有办法禁用本地化(或特定区域设置的后备?是否可以使用与路由中的区域设置无关的自定义URL?

谢谢!

2 个答案:

答案 0 :(得分:2)

我建议你使用带有 options={"i18n":"false"} 的路由 然后在路径中,您将语言环境设置为扩展名,您会得到类似这样的内容

/**
 *@Route("/{prefix}/moncompte", methods={"GET"}, options={"i18n":"false"}, requirements={"prefix"="fr|en|ar"})
*/

答案 1 :(得分:-1)

是的,你可以,在路由失败时使用else(“找不到路由”)然后包含此页面而不是重定向到404页面。