繁体   English   中英

Symfony - Sonata-Admin 菜单组翻译

[英]Symfony - Sonata-Admin menu group translation

我在管理菜单中翻译组时遇到问题。 它翻译标签但不翻译组:

服务:sonata.admin.language:类:App\\Bundle\\LanguageBundle\\Admin\\LanguageAdmin 标签:-名称:sonata.admin manager_type:orm 组:“admin.menu.group.language” 标签:“admin.menu.group. item.languages”参数: - ~ - App\\Bundle\\LanguageBundle\\Entity\\Language - ~

sonata.admin.language_pair:
    class: App\Bundle\LanguageBundle\Admin\LanguagePairAdmin
    tags:
        - name: sonata.admin
          manager_type: orm
          group: "admin.menu.group.language"
          label: "admin.menu.group.item.language_pairs"
    arguments:
        - ~
        - App\Bundle\LanguageBundle\Entity\LanguagePair
        - ~

谁能帮忙???

当我添加

label_catalogue: "YourBundleName"

进入“标签”部分,它可以帮助我翻译组标签。

不幸的是,建议的答案对我不起作用:它仍然没有翻译。 这是我必须做的:

  1. 出于某种原因, label_catalogue: "messages" 甚至对 [setTranslationDomain, [messages]] 的调用都没有改变任何东西:Symfony 仍会在 SonataAdminBundle.en.yml(我使用 yml 文件)中寻找要翻译的字符串。

  2. 因此,在 app/Resources/translations/ 中创建一个文件 SonataAdminBundle.en.yml(或 xml,无论您使用哪个),并在其中添加您的组字符串:

     admin: menu: group: language: Language
  3. 在 config.yml 中,在 Sonata_admin 下添加这些行:

     sonata_admin: [...] dashboard: groups: admin.menu.group.language: ~
  4. 清除缓存。 重要的! 在我这样做之前,它以某种方式没有翻译它。

还可以使用 Symfony 翻译调试器来了解它在哪里寻找一些字符串。

希望这可以帮助!

菜单组标签使用 'SonataAdminBundle' 域进行翻译,但项目标签 - 使用 Admin 类中 $translationDomain 变量中定义的 'messages' 域或域。

对我来说,@Andrey 和 @Catalins 的组合回答成功了:

config/packages/sonata_admin.yaml

sonata_admin:
    ...

    dashboard:
        blocks:
        -
            position: left
            type: sonata.admin.block.admin_list

        groups:
            app.admin.group.cms:
                label: 'app.admin.group.cms'
                label_catalogue: 'messages' # <--- this is not the bundle name, but the "translation domain" / filename of the translation file
                items:
                    - app.admin.page
                roles: ['ROLE_ADMIN']

    ...

并在translations/messages.en.yml

app:
  admin:
    group:
      cms: CMS
    pages:
      label: Pages

您可以添加一个“翻译”节点:

translation: YourBundle

暂无
暂无

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

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