2013-03-18 88 views
14

我已經開始與新索納塔管理包。它非常方便,易於安裝和使用,但我似乎無法得到翻譯固定的默認標籤標籤在索納塔管理員捆綁

e.g link_add,link_list來了,而不是正確的英語標籤。

#SonataAdmin 
    sonata_block: 
    default_contexts: [cms] 
    blocks: 
     sonata.admin.block.admin_list: 
      contexts: [admin] 
     sonata.block.service.text: 
     sonata.block.service.rss: 

sonata_admin: 
    title:  Sonata Project 
    title_logo: /bundles/sonataadmin/logo_title.png 
    templates: 
     # default global templates 
     layout: SonataAdminBundle::standard_layout.html.twig 
     ajax: SonataAdminBundle::ajax_layout.html.twig 

     # default actions templates, should extend a global templates 
     list: SonataAdminBundle:CRUD:list.html.twig 
     show: SonataAdminBundle:CRUD:show.html.twig 
     edit: SonataAdminBundle:CRUD:edit.html.twig 

    dashboard: 
     blocks: 
      # display a dashboard block 
      - { position: left, type: sonata.admin.block.admin_list } 

這是我的配置文件,這些是文檔提供的基本默認設置。我在這裏缺少什麼來啓用默認視圖參數的標籤?任何人可以幫助

回答

25

的翻譯菜單和形式覆蓋文件:SonataAdminBundle.[your_language].xliff(與內容:vendor/sonata-project/admin-bundle/Sonata/AdminBundle/Resources/translations/SonataAdminBundle.[your_language].xliff),把文件中:

app/Resource/SonataAdminBundle/translations/ 

完整路徑:

app/Resource/SonataAdminBundle/translations/SonataAdminBundle.[your_language].xliff 

如果你想翻譯您的字段標籤,您必須在您的捆綁包中創建翻譯文件,例如:

src/YourAlias/YourNameOfBundle/Resources/translations/YourAliasYourNameOfBundle.[your_language].xliff 

如果您Admin類是在

src/YourAlias/YourNameOfBundle/Admin/YourClassAdmin.php 

Sonata使用FOSUserBundle,如果你想改變翻譯爲用戶模塊,您必須ovverride文件:FOSUserBundle.[your_language].yml在:

app/Resource/FOSUSerBundle/translations/FOSUserBundle.[your_language].yml 

和類似的SonataUserBundle

我使用該配置,一切正常!

+0

但如何實現從翻譯文件奏鳴曲管理包默認的翻譯已經有它。奏鳴曲包生成的標籤不起作用。他們正在顯示默認的樹枝參數。有關於此的任何建議? – satin 2013-03-19 06:31:42

+27

在'config.yml':'框架:#...譯者:{回退:%現場%}'和'PARAMATERS:區域:your_laguage]''中parameters.yml'。 – mkjasinski 2013-03-19 09:28:06

+0

謝謝@mkjasinski幫助。由於 – satin 2013-03-19 11:29:01

10

擴展在上面@ mkjasinski的評論中,Symfony的翻譯組件需要尋找關於請求_locale屬性。如果缺失,或者沒有找到指定語言環境的翻譯,則它使用後備值。然而,這個回退值默認也是空白的,因此看到翻譯標籤而不是文本。

爲了解決這個問題,通過增加設置default translation locale以下內容config.yml

framework: 
    #... 
    translator: 
    fallback: %locale%