15

ユーザーの管理に FOSUserBundle を使用しています。ユーザーを登録するために、自分のニーズに合ったバンドルのフォームを再利用しました。それでも、フィールドのいくつかの属性を設定する必要がありました。これは、次のように小枝で簡単に実行できました。

    {{ form_widget(form.username, { 'attr': {'class': "span12",
        'placeholder': "Username"} }) }}

今、私の目標はプレースホルダーを自動翻訳することなので、次のコードを提案しました。

    {{ form_widget(form.username, { 'attr': {'class': "span12",
        'placeholder': "{{'security.login.usernameplaceholder'|trans}}"} }) }}

この前のコードは、 {{'security.login.usernameplaceholder'|trans}}に等しいプレースホルダー値を持つ入力を生成しました。

この問題を解決するために、変数を設定しようとしましたが、symfony はエラーを生成しました!!!

    {% set usernameplaceholder = {{'security.login.usernameplaceholder'|trans}} %}
    {{ form_widget(form.username, { 'attr': {'class': "span12",
        'placeholder': usernameplaceholder} }) }}

この問題を解決する提案はありますか?

ありがとう、

4

5 に答える 5

32

{{Twig では、内に入れるべきではありません{{( についても同じです{%)。php タグと考えてください。

以下は動作するはずです

{% set usernameplaceholder = 'security.login.usernameplaceholder'|trans %}
{{ form_widget(form.username, { 'attr': {'class': "span12",
    'placeholder': usernameplaceholder} }) }}

また

{{ form_widget(form.username, { 'attr': {'class': "span12",
    'placeholder': 'security.login.usernameplaceholder'|trans} }) }}
于 2013-07-21T16:28:33.467 に答える