创建左侧导航栏菜单
创建左侧导航栏菜单1、创建 menu 表
CREATE TABLE `menu` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(128) NOT NULL, `parent` int(11) DEFAULT NULL, `route` varchar(256) DEFAULT NULL, `order` int(11) DEFAULT NULL, `data` text, PRIMARY KEY (`id`), KEY `parent` (`parent`), CONSTRAINT `menu_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `menu` (`id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
数据库表位置:vendor\mdmsoft\yii2-admin\migrations\m140602_111327_create_menu_table.php
或按照下面你操作步骤执行:
① 打开 common/config/main.php ,在 'components' => , 数组中添加下面代码:
'authManager' => [
'class' => 'yii\rbac\DbManager',
],
② 执行命令:yii migrate --migrationPath=@mdm/admin/migrations复制代码 2、在 backend/views/layouts/left.php 中添加内容① 在 left.php 中找到下面代码:
<?= dmstr\widgets\Menu::widget(
//......
) ?>
② 在后面添加下面代码:<?php
use mdm\admin\components\MenuHelper;
$callback = function($menu){
$data = json_decode($menu['data'], true);
$items = $menu['children'];
$return = ['label' => $menu['name'],'url' => [$menu['route']]];
//处理我们的配置
if ($data) {
isset($data['visible']) && $return['visible']
= $data['visible'];//visible
isset($data['icon']) && $data['icon']
&& $return['icon']
= $data['icon'];//icon
//other attribute e.g. class...
$return['options']
= $data;
}
//没配置图标的显示默认图标
(!isset($return['icon']) || !$return['icon']) && $return['icon']
= 'fa fa-circle-o';
$items && $return['items']
= $items;
return $return;
};
//对菜单menu进行了优化
echo dmstr\widgets\Menu::widget( [
'options' => ['class' => 'sidebar-menu'],
'items' => MenuHelper::getAssignedMenu(Yii:<img src="static/image/smiley/default/shy.gif" border="0" smilieid="8" alt=":$">app->user->id,null, $callback),
]
);
?>
复制代码3、点击“菜单”,然后点击 创建按钮进行创建菜单
http://bbs.hongyuvip.com/uploads/article/20161015/8f84f07364119767d51da947ccdaeb96.png
4、点击“路由”,将以下几个路由写到 auth_item 表(为了分配路由给菜单)
http://bbs.hongyuvip.com/uploads/article/20161015/47e5ec9469d57f8bddbab92f588267a9.png
点击“权限”,再点击查看“权限控制”,分配 /admin/menu/*
http://bbs.hongyuvip.com/uploads/article/20161015/8fcaaf2565c8efd73e3bd2d15330f798.png
5、点击“菜单”,创建以下子菜单
http://bbs.hongyuvip.com/uploads/article/20161015/ac59b76c40762d2e548b61fe9411acf7.png
http://bbs.hongyuvip.com/uploads/article/20161015/cf89c54a1d764d32e8001c52f26dd9cc.png
* 注意:填写 “Parent” 即父级菜单的名称时要手动选择才行,直接全打上 会保存不了的。比如:先输入“权限”,然后出现下拉菜单就可以选择“权限控制”了。
6、刷新页面,预览效果:你会发现,多了一个菜单,请删除 left.php 中多余的 <ul></ul>
http://bbs.hongyuvip.com/uploads/article/20161015/637e27da0cbc966a30f73b69e417eeee.png
页:
[1]