![](/img/trans.png)
[英]Symfony @Route annotation i18n: Is it possible to have a fallback for languages not explicitly declared?
[英]Symfony 4.1 i18n route prefix: exclude route
我有一个在 Symfony 4.1 上运行的 i18n 项目。
我想实现一些路由,如:
在这篇文章之后,我使用注释来处理路由,并为我的注释路由设置了一个全局前缀:
site:
resource: '../src/Controller/'
type: annotation
prefix:
en: '/en'
fr: '/fr'
这样,'../src/Controller/' 的注解中定义的所有路由都带有前缀,这导致我的“选择语言”页面和主页之间发生冲突。
我想从 i18n 前缀中排除“选择语言”页面,因此当主页可以保留在 /fr 或 /en 上时,我将能够为此页面使用“/”。
有什么想法可以实现这一目标吗?
在没有前缀选项的annotations.yaml
顶部定义此路由:
_choose_language:
path: /
controller: App\Controller\ChooseLanguageController
site:
resource: '../src/Controller/'
type: annotation
prefix:
en: '/en'
fr: '/fr'
并且不要为此特殊控制器使用路由注释:
class ChooseLanguageController
{
public function __invoke()
{
return new Response('Choose Language!');
}
}
那么此操作将从 i18n 前缀中排除。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.