madforwebs / menu-bundle
此扩展包为symfony2提供菜单功能
dev-master
2018-05-10 19:07 UTC
Requires
- symfony/framework-bundle: ~2.3|~3.0
This package is auto-updated.
Last update: 2024-09-08 16:49:56 UTC
README
MenuBundle
表示在您的Symfony应用程序中实现简单且功能丰富的菜单!
安装
下载扩展包
打开命令行控制台,进入您的项目目录,并执行以下命令以下载此扩展包的最新稳定版本
$ composer require madforwebs/menu-bundle
此命令要求您全局安装Composer,请参阅Composer文档的《安装章节》。
启用扩展包
然后,在您的项目中的app/AppKernel.php
文件中添加以下行以启用扩展包
// app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new Knp\Bundle\MadForWebs\MenuBundle(), ); // ... } // ... }
创建您的第一个菜单
示例构建类可能看起来像这样
<?php namespace AdminBundle\Menu; use MadForWebs\MenuBundle\Menu\MenuInterface; class MainMenu implements MenuInterface { public function getMenu() { return [ 'class' => 'sidebar-menu', 'items' => [ [ 'name' => 'Users', 'icon' => 'fa fa-user', 'items' => [ [ 'name' => 'Admins', 'route' => 'admin_core_user_admin_list', 'active' => [ 'admin_core_user_admin_[\w]+', ], ], [ 'name' => 'Clients', 'route' => 'admin_core_user_client_list', 'active' => [ 'admin_core_user_client_[\w]+', ], ], ], ], [ 'name' => 'Groups', 'route' => 'admin_core_group_list', 'icon' => 'fa fa-users', 'active' => [ 'admin_core_group_[\w]+', '_admin.group.[\w\.]', ], ], ], ]; } }
渲染
要实际渲染菜单,只需在模板的任何位置执行以下操作
{{ renderMenu('TeacherBundle\\Menu\\MainMenu','sidebar') }}
如果您已将菜单定义为服务,则可以按以下方式渲染
{{ renderMenu('my.menu.service.name','sidebar') }}