2016-11-11 13 views
1

異なる言語の異なるテキスト/フラグなどを保存するSymfonyバンドルを作成したいと思います。異なる言語の異なるテキストを持つsymfonyバンドル

どういうわけかこの機能のためにSymfonyトランスレータを使用できますか? それはちょうど2つのテーブルになりますか?

+1

なぜsymfonyの翻訳者を使ってテキストを翻訳すべきではないのですか? – Federkun

+0

私は純粋な翻訳をしたくありません。私は、この機能を使用してArticleBundleを例に挙げると、cz - flag active、text - 私たちはen-flag inactive、textのためにクールです - テキストが悪い – Jimi

答えて

1

私が質問を正しく理解しているかわかりません。

しかし、異なる言語で異なるテキストのために、ちょうどTranslationコンポーネント使用:基本的には、次の2つのファイルを作成http://symfony.com/doc/current/translation.html

を - mytranslation.en.ymlmytranslation.cs.yml(英語のためにチェコ語)。コントローラまたはサービスでは、このような翻訳サービスを使用、

app.title: My English title 
app.description: This is my English translation. 
app.counter: You have been here %count% times so far. 

その後:

$title = $this->get('translator')->trans('app.title', [], 'mytranslation'); 

をまたはパラメータで:

それらのそれぞれは、例えば、同じ変換キーを持っています小枝テンプレートで
$counter = $this->get('translator')->trans('app.counter', ['%counter%' => 2], 'mytranslation'); 

、あなたはこのように同じことを行うことができます。

{% trans_default_domain "mytranslation" %} 
{{ 'app.title'|trans }} 
{{ 'app.counter'|trans({'%counter%': 2}) }} 
関連する問題