问题标签 [knpmenubundle]

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 回答
427 浏览

html - KnpMenuBundle 需要在链接中添加自定义 css 和 html

我正在使用 KnpMenuBundle,我需要将自定义 css 和标签添加到具有“uri”=>“#”路由的链接之一。我将如何做到这一点?

我希望链接看起来像这样:

目前链接呈现如下:

这是我的代码:

谢谢!

0 投票
2 回答
1860 浏览

php - Access Container or securityContext or EntityManager from MenuBuilder through RequestVoter

I found this piece of code shared in a Gist (somewhere I lost the link) and I needed something like that so I started to use in my application but I have not yet fully understood and therefore I am having some problems.

I'm trying to create dynamic menus with KnpMenuBundle and dynamic means, at some point I must verify access permissions via database and would be ideal if I could read the routes from controllers but this is another task, perhaps creating an annotation I can do it but I will open another topic when that time comes.

Right now I need to access the SecurityContext to check if the user is logged or not but not know how.

I'm render the menu though RequestVoter (I think) and this is the code:

All the code related to securityContext was added by me in a attempt to work with it from the menuBuilder. Now this is the code where I'm making the menu:

But this is complete wrong since I'm not passing securityContext to the method and I don't know how to and I'm getting this error:

An exception has been thrown during the rendering of a template ("Notice: Undefined property: PlantillaBundle\Menu\MenuBuilder::$securityContext in /var/www/html/src/PlantillaBundle/Menu/MenuBuilder.php line 12") in /var/www/html/src/PlantillaBundle/Resources/views/menu.html.twig at line 2.

The voter is defined in services.yml as follow:

So, how I inject securityContext (I'll not ask for EntityManager since I asume will be the same procedure) and access it from the menuBuilder?

Update: refactorizing code

So, following @Cerad suggestion I made this changes:

services.yml

MenuBuilder.php

Abd ib my template just render the menu {{ knp_menu_render('frontend_menu') }} but now I loose the FontAwesome part and before it works, why?

0 投票
3 回答
968 浏览

symfony - 如何在 symfony-cmf 中渲染子菜单

我正在拼命地尝试在 symfony-cmf 中渲染一个子菜单。

例子

结构:

每当当前页面在page1层次结构中的某个位置时,它应该p1-subpage*用来呈现菜单,当我在page2层次结构中时,它应该p2-subpage*用来呈现菜单。从技术上讲,这意味着它应该将当前项目设置为第一级的父项(如果它还没有在它上面)并渲染一级节点(例如knp_menu_render('main', { depth: 1 }))。

问题可以分为两部分:

  1. 从给定节点呈现(子)菜单
  2. 检索当前节点

思考与试验

  • TWIG:有人建议支持渲染子菜单作为 KnpMenu 本身的功能,但尚未完成。作为解决方法,注册树枝扩展已由问题中的某个人提供。但是,此扩展基于随 KNP-Menu 2.0删除getCurrentItem的方法。尽管 cmf当前使用的是 knp-menubundle v1.1,但很快就会改变
  • TWIGCnertaBreadcrumbBundle将带回此功能,但也取决于KNP-Menu 2.0。
  • TWIG使用与此处建议的类似的hack。它检查当前的 URI,计算斜杠的数量并根据它决定使用什么。这可能会奏效。这里的问题:我没有cmfMainContent定义变量,也找不到类似的东西{{ dump() }}(也没有包含菜单)。
  • RouteVoter: cmf 本身有一些 MenuVoters 本身,它们有很好的文档说明它们是什么,但没有说明如何使用它们。我认为没有任何方法可以访问该功能whithin twig也不知道如何拦截菜单构建

谢谢你的帮助。

0 投票
0 回答
131 浏览

php - 从 Symfony2 中的 MenuBuilder 类生成格式良好的路由

我在控制器中定义了这条路线:

我需要在 KNPMenuBundle MenuBuilder 类中设置正确的路线。我正在做如下:

它适用于dev环境,因为路由显示了正确的页面并执行了正确的代码,但是如果我离开dev并上线,prod那么我得到了一个404 Not found,在这种情况下我做错了什么?在类内生成路由的正确方法应该是什么MenuBuilder?有什么建议吗?

0 投票
2 回答
1962 浏览

php - Symfony2,使用 QueryBuilder 和 KnpPaginatorBundle

我正在使用 KnpPaginatorBundle 并且我在 Repository 中使用 QueryBuilder 来选择数据。我不得不将参数sortdirection放在变量$sort$direction中,并将它们传递给 Query 以便能够执行和orderBy

此代码有效,但我想向您展示它,并且如果它是使用 KnpPaginatorBundle 执行此操作的好方法或者 knpPaginatorBundle 提供了另一种更好的方法,请发表您的意见。

我可以将这些参数直接传递给不在 queryBuilder 中的 knp_paginator 吗?

Action

旅游资料库:

0 投票
2 回答
582 浏览

twitter-bootstrap - MopaBootstrapBundle 和 FontAwesome 未显示图标

我正在尝试为每个元素构建一个带有图标的菜单。

我正在使用(或尝试)

  • MopaBootstrapBundle
  • KnpMenuBundle
  • 字体真棒

菜单结构显示和工作正常,但图标未显示。谁能在这里把我放在正确的轨道上?

这是我到目前为止所做的:

设置 config.yml:

在我的中包括引导样式/app/Resources/MopaBootstrapBundle/views/layout.html.twig

建立我的菜单:

查看页面源代码,我发现所有类都设置正确。但是,在链接的样式表中,我发现了这一点:

../../bundles/mopabootstrap/fonts/我的设置中似乎不存在该路径,这可以解释缺少的图标。但是,我无法弄清楚如何修改它。

文档中,我找到了对@icon-font-path变量定义的引用。我不知道在哪里定义它以及使用哪个值。

注意:字体文件确实驻留在我的web/fonts文件夹中。这一切都发生在 Windows 机器上。

更新:

我在这些位置找到了 FontAwesome 文件:

  • <my_project_path>\web\bundles\mopabootstrap\fonts\fa4
  • <my_project_path>\web\fonts

只有 Glyphicon 字体文件可以在

  • <my_project_path>\web\bundles\mopabootstrap\bootstrap\fonts.

我还注意到,当我在生成的 CSS 文件的路径中定义@icon-font-path: "../fonts/";/src/<my_bundle>/Resources/public/less/mystyles.lesssrc: url('../fonts/fontawesome-webfont.eot?v=4.2.0');

但是,当我加载我的应用程序并调用资产转储的 CCS 文件时,路径是src: url(../../Resources/public/fonts/fontawesome-webfont.eot?v=4.2.0);

0 投票
1 回答
618 浏览

php - Symfony2,不要在带有 KnpPaginatorBundle 的 url 中使用别名

我正在使用 KnpPaginatorBundle ,我想知道是否可以像这样获取没有别名(t .country)的 url

不像这样

这是表格:

这是控制器:

没有解决方案 ?

0 投票
0 回答
34 浏览

symfony - KnpMenuBundle 子对象使其他内容成为当前的

我有以下结构:

并且

/list如果选择了详细信息页面之一,当然如果选择了实际列表,我现在希望导航将其作为活动元素。

我的导航如下所示:

我正在阅读其他一些问题,但我无法找到适合我的正确答案。因为我没有描述的菜单项List Detail

0 投票
3 回答
4500 浏览

php - KnpMenuBundle - 如何为菜单的每个元素设置图标类?

我想我的视图代码如下所示:

我通过 Menu Builder 创建菜单元素:

我用以下代码(knp_menu.html.twig)覆盖了视图:

如何<i>在 Builder 类中将图标类名称的值传递给方法 adminMenu() 中的元素?最简单的方法是什么?

0 投票
1 回答
1593 浏览

symfony - KNP 菜单捆绑翻译域

我正在使用Symfony 2.3KnpMenuBundle

是否可以为菜单项使用翻译域?

像这样: