繁体   English   中英

Symfony 3 | JMSi18nRoutingBundle不转换路线

Symfony 3 | JMSi18nRoutingBundle doesn't translate routes

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

伙计们,我当时使用的是BeSimplei18nRoutingBundle,但也使用了一些JMS捆绑软件,因此我希望所有人都成为JMS捆绑软件,并将其更改为JMSi18nRoutingBundle。 现在,我基于语言环境的路由可以正常工作,但是我无法翻译它们。 随处可见,无法创建/查找解决方案。

首先,我安装了JMS的路由和转换包。 已添加到AppKernel。

之后,将路由配置添加到config.yml文件:

jms_i18n_routing:
    default_locale: tr
    locales: [tr, en]
    strategy: prefix_except_default

然后,将2条路由添加到routing.yml文件:

homepage:
    path:     /
    defaults: { _controller: AppBundle:Default:index }
    options: { i18n: true }

secondpage:
    path:     /ikincisayfa
    defaults: { _controller: AppBundle:Default:secondPage }
    options: { i18n: true }

在那之后我提取翻译文件连接控制台上的语言环境:

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"

并翻译ikincisayfasecondpage:

# Desc: /
homepage: /

# Desc: /ikincisayfa
secondpage: /secondpage

但是,当我运行php bin / 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 

试图清除缓存,重新提取翻译但没有运气..有人可以说出我在哪里做错了..谢谢。

1 个回复

好的,我找到了问题..我没有在routing.yml文件中删除由symfony创建的路由:

app:
    resource: '@AppBundle/Controller/'
    type: annotation

看来,这引起了Symfony的路由和JMS的路由器之间的冲突。 我希望JMS的文档也有这些信息。

2 JMSI18nRoutingBundle和可翻译路线目录位置

我正在使用JMSI18nRoutingBundle来实现应用程序路由的内部化,它是一些不错的软件,但不幸的是,它没有很好地记录,并且我不确定如何在不同的语言环境中实现路由中字符串的转换它作为文档中的示例给出。 我想要的是(默认本地,不带前缀,所有其他语言都经过翻译,并带有语言环境前缀): ...

7 JMSI18nRoutingBundle检测首选语言

有没有办法为策略“ prefix_except_default”检测用户的语言环境? 例如 默认语言环境:zh 如果我访问www.example.com,并且用户的语言环境设置为“ fr”,则会将我重定向到www.example.com/fr 与“前缀”一样,仅区域设置默 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM