0

ユーザーがログインして Web サイトをナビゲートしている間、ナビゲーション バーにはメニューが表示されます (すべてのユーザーが独自のメニューを持っています)。そうするために、私はこのように進めました: 最初に、データベースのテーブル内に、各ユーザーに属する html コードを含むフィールドを配置します。次に、ユーザーが接続すると、このフィールドがセッション内に配置され、admin.html という twig ファイルに表示されます。このような小枝:

{{ app.session.get('menu')}}

また、ユーザーがアクセスするすべてのページは、このページ管理者から自動的に継承されます。さて、私の解決策はうまくいかないようです。このようなフィルターについて考える必要があると言われましたが、この解決策がどのように得られるかはわかりませんでした。私の論理に何か問題があることはわかっていますが、何かヒントはありますか? アイデア?前もって感謝します。

メニューの内容の例:

<div class="navbar">
    <div class="navbar-inner">
        <a class="brand" href="#">Menu1</a>
        <ul class="nav">
            <li class="active"><a href="#">Home</a></li>
            <li><a href="{{ path('graphe'|url_encode())}}">Graphe</a></li>
            <li><a href="#">Link</a></li>
            <li><a href="#">Link</a></li>
            <li><a href="#">Link</a></li>
            <li><a href="#">Link</a></li>
            <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown" >Administration <b class="caret"></b></a>
                <ul class="dropdown-menu">
                    <li><a href="gest_utilisateur">Gestion des utilisateurs</a></li>
                    <li><a href="#">Gestion des Menus</a></li>
                    <li><a href="gest_domaine">Gestion des Domaines</a></li>
                    <li><a href="gest_equipe">Gestion des Equipes</a></li>
                </ul>
            </li>
        </ul>
    </div>
</div>
4

1 に答える 1

0

私はそのようにこれを行います:

  1. ユーザーエンティティにメニューフィールドを追加
  2. テンプレートでは、次の方法でこれを取得します。

    {{ app.user.getMenu() }}
    

    ユーザーもセッションに保存されるためです。

于 2012-10-22T14:39:51.587 に答える