2

私のホームページテンプレートIndex.html.twigには、管理者ユーザーがログインしている場合にのみ表示したいナビゲーションバーが1つありますが、そうでない場合は表示しません。

私はこれを試しました

{% if is_granted('ROLE_ADMIN') %}
       <div class="navigation">
       </div>
{% endif %}

しかし、私はこのエラーを受け取ります

テンプレートのレンダリング中に例外がスローされました(「セキュリティコンテキストに認証トークンが含まれていません。考えられる理由の1つは、このURLにファイアウォールが構成されていないことです。

これはホームページなので、ファイアウォールの背後に置くことはできません。それを行う方法はありますか

4

1 に答える 1

2

その中にifブロックを次のようにラップします。

{% if app.user is not null %}
    {% if is_granted('ROLE_ADMIN') %}
        {# your code #}
    {% endif %}
{% endif %}
于 2012-08-23T02:19:52.303 に答える