Symfony 3 | JMSi18nRoutingBundle不';t转换路径
伙计们,我使用的是Besimple18nRoutingBundle,但也使用了一些JMS捆绑包,所以我希望所有的都是JMS捆绑包,并将其更改为JMSi18nRoutingBundle。现在我的基于区域设置的路由工作得很好,但我无法翻译它们。到处查看,无法创建/找到解决方案 首先,我安装了JMS的路由和转换包。添加到AppKernel 之后,将路由配置添加到config.yml文件:Symfony 3 | JMSi18nRoutingBundle不';t转换路径,routing,translation,symfony-3.2,Routing,Translation,Symfony 3.2,伙计们,我使用的是Besimple18nRoutingBundle,但也使用了一些JMS捆绑包,所以我希望所有的都是JMS捆绑包,并将其更改为JMSi18nRoutingBundle。现在我的基于区域设置的路由工作得很好,但我无法翻译它们。到处查看,无法创建/找到解决方案 首先,我安装了JMS的路由和转换包。添加到AppKernel 之后,将路由配置添加到config.yml文件: jms_i18n_routing: default_locale: tr locales: [tr
jms_i18n_routing:
default_locale: tr
locales: [tr, en]
strategy: prefix_except_default
homepage:
path: /
defaults: { _controller: AppBundle:Default:index }
options: { i18n: true }
secondpage:
path: /ikincisayfa
defaults: { _controller: AppBundle:Default:secondPage }
options: { i18n: true }
app:
resource: '@AppBundle/Controller/'
type: annotation
然后,在routing.yml文件中添加了2条路由:
jms_i18n_routing:
default_locale: tr
locales: [tr, en]
strategy: prefix_except_default
homepage:
path: /
defaults: { _controller: AppBundle:Default:index }
options: { i18n: true }
secondpage:
path: /ikincisayfa
defaults: { _controller: AppBundle:Default:secondPage }
options: { i18n: true }
app:
resource: '@AppBundle/Controller/'
type: annotation
之后,我在控制台上提取了enlocale的翻译文件:
php bin/console translation:extract en --bundle=AppBundle --enable-extractor=jms_i18n_routing --output-format=yml --exclude-dir=cache --exclude-dir=data --exclude-dir=logs --exclude-dir=Tests --exclude-dir=Service --output-dir="app/Resources/translations"
并翻译成第二页:
# Desc: /
homepage: /
# Desc: /ikincisayfa
secondpage: /secondpage
但是当我运行phpbin/console debug:router时,这里是输出;没有翻译:
tr__RG__homepage ANY ANY ANY /
en__RG__homepage ANY ANY ANY /en/
tr__RG__secondpage ANY ANY ANY /ikincisayfa
en__RG__secondpage ANY ANY ANY /en/ikincisayfa
试图清除缓存,重新提取翻译,但没有成功。。有人能告诉我哪里出了错吗。。谢谢。好的,我发现问题了。。我没有在routing.yml文件中删除symfony routing创建的文件:
jms_i18n_routing:
default_locale: tr
locales: [tr, en]
strategy: prefix_except_default
homepage:
path: /
defaults: { _controller: AppBundle:Default:index }
options: { i18n: true }
secondpage:
path: /ikincisayfa
defaults: { _controller: AppBundle:Default:secondPage }
options: { i18n: true }
app:
resource: '@AppBundle/Controller/'
type: annotation
这似乎导致了Symfony的路由和JMS的路由器之间的冲突。我希望JMS的文档也有这些信息