1

私は symfony (3.1.3) の最後のバージョンを使用していますが、複数の変数を変換したいと考えています。しかし、私は見つけられなかったし、良い解決策

今私はやっています:

{% block h1 %}{{ 'service.create'|trans }} {{ ('service'|trans) }}{% endblock %}

私は試します:

{% block h1 %}{{ 'service','service.create'|trans }} }} { %endblock %}

しかし運がない。

私も試してみます

{% trans %}service.create|service{% endtrans %}

ありがとう

4

4 に答える 4

1

次のように、翻訳でパラメーターを使用できます。

{{ 'service.create'|trans }}
{{ 'service.create'|trans({'%separator%': 'any text'}) }}

そしてあなたのmessages.ru.ymlで

...
service:
    create: ... %separator% ...
    ...

あなたseparatorがhtmlにある場合は、次のrawように追加します:

{{ 'service.create'|trans({'%separator%': '<br>'})|raw }}

詳細については、symfony doc を参照してください

于 2017-01-16T19:19:45.560 に答える
0

バックエンドで文字列を翻訳できます:

public function indexAction($name)
{
    $translated = $this->get('translator')->trans('Hello '.$name);

    return new Response($translated);
}

または小枝テンプレートで:

<h1>{{ 'service.create'|trans }}</h1>

新しい翻訳リソースを作成する (または翻訳リソースを含むバンドルをインストールする) たびに、必ずキャッシュをクリアして、Symfony が新しい翻訳リソースを検出できるようにします。

php bin/console cache:clear

詳細: http://symfony.com/doc/current/translation.html

于 2016-08-17T06:56:52.663 に答える
0

マルチ変数を変換するだけで済みました。小枝はそれをサポートしていません...

于 2016-08-18T01:13:15.827 に答える