問題タブ [knpmenu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3469 参照

symfony - Symfony 2.0 KnpMenu カスタム テンプレート

knpMenuからテンプレートを変更しようとしています。に改名しましたknp_main_menu.html.twig

config.yml:

knp_menu.html.twig動作しますが、私のファイル (オリジナルの正確なコピー) は動作しません。これを行う方法はありますか?

私の最終的な目標は、アイコンで機能するテンプレートを作成することです。

例えば:

次のようなものを生成する必要があります。

0 投票する
1 に答える
8746 参照

symfony - symfony2 で KnpMenu によってツリー項目のメニューを作成する方法

次のような ul を作成したいと思います。

sub ul は別のサブアイテムになります。作成方法がわかりません。どなたでも助けていただけます。

0 投票する
1 に答える
6801 参照

symfony - 現在のルートまたはテンプレートをアクティブ リンクとして指定する KnpMenu

symfony2 では、上記のように、指定されたメニューの子を Controller または Template でアクティブなステータスとして設定したいのですが、どうすればそれを達成できますか? つまり、複数のルート (コントローラー アクション、テンプレート) を 1 つのメニューの子にマップしたいのですが、それは可能ですか? コントローラーまたはテンプレートでメニューを取得して、アクティブに設定できると思います。

0 投票する
4 に答える
5642 参照

symfony - KnpMenu、現在のメニュー項目を設定できません

この問題に関する他のエラーを見てきました。私はまったく同じことをしました。メニューをレンダリングしようとすると、次の致命的なエラーが発生します。

これが私のビルダーの外観です。

Github の問題トラッカーを調べたところ、この問題は修正されたようですが、同じ問題が再び発生するのはなぜですか?

つまり、 I の場合var_dump($menu)、それがMenuItemであり、KnpMenu のドキュメントを見ると、間違いなくsetCurrentUri()my のメソッドがあることがわかり$menuます。

0 投票する
1 に答える
2315 参照

symfony - KnpMenu (Symfony2.1) に div を追加する方法

KnpMenuBundle を使用してメニューを生成し、誰かがメニュー ボタンにカーソルを合わせるたびに、ドロップダウン ボックスを作成したいと考えています。

私が取得したいのは、次のような構造です。

可能であれば、div 内からコントローラーをレンダリングしたいと思います。

これはできますか?

ドキュメントで何かを見逃した場合は、何時間も検索しているため、リンクを投稿してください...

0 投票する
1 に答える
1169 参照

symfony - KnpMenuを使用した折りたたみメニューナビゲーション

現在のプロジェクトでKnpMenuを使用して、ナビゲーションツリーロジックを処理したいと思います。私はこのようなメニューツリーを構築しました:

現在アクティブなメニュー項目だけが表示されている折りたたまれたメニューツリーをレンダリングできるかどうか疑問に思いました。他のアイテムは表示されません。ドキュメントでは、これを達成する方法を見つけていません。

誰かが解決策を持っていますか?

ありがとうございました

0 投票する
1 に答える
1796 参照

symfony - symfony の例外 KNPMenu ビルダーがメニュー ビルダーに存在しません

KnpMenu チュートリアルを試してメニューを作成し、それを Symfony のブートストラップで使用します。ローカル モードでは完全に動作しますが、サーバー (両方とも開発モード) で試してみると、次のエラーが発生します。

「robStormWelcomeBundle:Homepage:index.html.twig」で、テンプレートのレンダリング中に例外がスローされました (「クラス "robStorm\WelcomeBundle\Menu\Builder" は、メニュー ビルダー "robStormWelcomeBundle:Builder" には存在しません。")。500 内部サーバー エラー - Twig_Error_Runtime 1 リンクされた例外: InvalidArgumentException »

ただし、ローカルまたはサーバーにまったく同じファイルがあります...

これが私のファイルの内容です:

app/config/config.yml で:

src/robStorm/WelcomeBundle/Controller/HomepageController :

src/robStorm/WelcomeBundle/Menu/builder.php :

src/robStorm/WelcomeBundle/Ressources/config/routing.yml :

src/robStorm/WelcomeBundle/Ressources/views/layout.html.twig :

0 投票する
1 に答える
2162 参照

symfony - KnpMenu を使用した Symfony 2 パンくずリスト

KnpMenuKnpMenuBundleの安定版を使用しています- v.1.2.0 いくつかの依存関係のために v.2 を使用できません。

メニューに応じて、ブレッドクラムを作成しようとしています。

メニューから始めましょう。MenuBuilder クラスがあります。

Knp \Menu\MenuItemクラスにはgetBreadcrumbsArray()メソッドがあります。現在アクティブなメニュー トレイル内の項目の配列を返す必要があります。以前のバージョンの KnpMenu (<= 1.1.2、私のバージョン)を使用している場合、返される配列は label => uri の形式になります。

level2ルートをロードすると、パンくずリストは次のようになります。

ホーム -> レベル 1 -> レベル 2

これは、Leve1 が Level2 の親であり、Home がその祖先でもあるためです。

その代わりに、Twig テンプレートでgetBreadcrumbsArray()メソッドを呼び出すと、次のデータが生成されます。

Level1なし、Level2なし、 Homeのみ。なにが問題ですか?そのように動作するはずですか?私は何を間違っていますか?

0 投票する
0 に答える
340 参照

php - Symfony2 のカスタム KnpMenuBundle TwigRenderer

Symfony2 プロジェクトをコーディングしています。KnpMenuBundle と Twitter Bootstrap 3 を使用しています。問題は、KnpMenuBundle が私のメニューに適切なクラスを生成しないことです。class="active" の代わりに class="current" を取得しました。

私は何をすべきかを探していますが、これが私がすでに行ったことです:

  1. TwigRender を KnpMenu から Renderer ディレクトリにコピーし、construct メソッドの currentClass 属性を変更しました。
  2. メニュービルダーとカスタムレンダラーをサービスにしました。
  3. レンダリングしてみました。

しかし、私はこの例外を受け取ります

私はあなたが私を助けてくれることを願っています。

慢性。

PS: 私の話し方は失礼ですが、私は英語のネイティブ スピーカーではありません ;)

0 投票する
1 に答える
949 参照

symfony - knpmenubundle を使用したネストされた動的メニュー

knpmenubundle を使用してメニューを作成しました。これは非常にうまく機能しており、データベースから動的にナビゲーションを取得しています。ただし、クライアントはサブメニューを追加したいと考えています。子ページを見つけるコントローラーを作成しましたが、正しい親の下のサブナビゲーションにそれらをアタッチする方法がわかりません。現時点では、現在の要素のコピーを自分自身に子ノードとしてアタッチします。

メニュービルダーは次のとおりです。

親要素のコントローラーは次のとおりです。

子要素のコントローラーは次のとおりです。

これらのコントローラはどちらも、カスタム リポジトリ クラスを使用してデータベースから情報を取得します。

カスタム リポジトリ コードは次のとおりです。

月曜日の朝の問題かもしれないので、自分で解決しようとし続けます。そうする場合は、回答としてここに投稿します。

追加情報

更新されたビルダー // 親を持つすべてのアイテムを検索します。次に、見つかったアイテムをその親にアタッチします。$subNavItems = $this->getDoctrine() ->getRepository('acmeStyleGuideBundle:pageSector') ->findSubNav($sector, $nav->getPageParent());

出力しています:

私はそれを出力する必要がありますが:

これは PageContent テーブルのスキーマです