Symfony2+Twig、翻訳の変数「メッセージは単純なテキストでなければなりません」

StackOverflow https://stackoverflow.com/questions/7811162

  •  26-10-2019
  •  | 
  •  

質問

私がプレーンPHPをやっていたとき、私は単にこれをやっていました:

printf(_("Hello %s !"), $name);

Twigでは、トランスタグを使用する必要があります。だから私はコピー/貼り付けをしています ドキュメントの例, 、そしてこれが私の完全なテンプレートです:

{% extends 'MyAppBundle::layout.html.twig' %}

{% block content %}
    <h1>
        {% trans %}
            Hello {{ name }}!
        {% endtrans %}
    </h1>
{% endblock %}

なぜSymfonyは次の脱出を返すのですか?

メッセージは「myappbundle :: home.html.twig」の単純なテキストでなければなりません

500内部サーバーエラー-TWIG_ERROR_SYNTAX

役に立ちましたか?

解決

翻訳の正確な構文は、Symfony2でスタンドアロンの小枝とは少し異なります。 Twigテンプレートの翻訳については、Symfony2ドキュメントをチェックしてください。 ここ. 。正しい構文は次のようになります:

{% trans %}Hello %name%!{% endtrans %}

他のヒント

前の答えに欠けているビットの1つは、メッセージの変数部分を置き換えるために必要な「with with」部分です。

{% trans with {'%name%':name} %}Hello %name%!{% endtrans %}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top