2014-03-26 80 views
0

我有標題,描述和圖像的實體。標題和說明是可翻譯的,並希望以三種語言提供:en,de和sl。默認語言環境是sl。sonataAdmin的翻譯

現在我配置a2lix,SonataAdmin和StofDoctrineExtension。

什麼是在奏鳴曲管理中使用可翻譯的最佳做法(當然是正確的)。

版本1:

$formMapper 
     ->add("title") //default language 
     ->add('description') //default language 
     ->add('image', 'sonata_type_model_list', array(), array('link_parameters' => array('context' => 'default'))) 
     ->add('translations', 'a2lix_translations_gedmo', array( // Use the old gedmo strategy 
      'translatable_class' => 'My\CoreBundle\Entity\SliderTranslation', 
    )); 

標題和描述分離爲默認語言。其他語言環境(en,de)位於可翻譯的選項卡中。

版本2:

$formMapper 
     ->add('image', 'sonata_type_model_list', array(), array('link_parameters' => array('context' => 'default'))) 
     ->add('translations', 'a2lix_translations_gedmo', array( // Use the old gedmo strategy 
      'translatable_class' => 'My\CoreBundle\Entity\SliderTranslation', 
    )); 

標題和描述的是不分離的,幷包括在翻譯選項卡。翻譯標籤是sl,en和de。

回答

1

第二個成爲A2lixTranslationForm的2.x版本的標準。

我建議使用另一種策略來嘗試此版本2.x:A2lix,Knp或Prezent。 與Gedmo相反,這些策略都是相互兼容的,因此它們將數據存儲在數據庫中的方式相互兼容,所以您將來可以輕鬆地從一個切換到另一個。

你也可以看看https://github.com/sonata-project/SonataTranslationBundle,目前正在開發中。