[教程] 首发 创建左侧导航栏菜单

[复制链接] [提交至百度]
admin 发表于 2017-12-18 22:02:59
1091 0

马上注册,下载资源,享用更多功能,让你轻松玩转网站

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

  创建左侧导航栏菜单1、创建 menu 表
  
  1. 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
  2.   ) ENGINE=InnoDB DEFAULT CHARSET=utf8
复制代码

数据库表位置:vendor\mdmsoft\yii2-admin\migrations\m140602_111327_create_menu_table.php
  或按照下面你操作步骤执行:
  ① 打开 common/config/main.php ,在 'components' => , 数组中添加下面代码:
  
  1. 'authManager' => [
  2.   'class' => 'yii\rbac\DbManager',
  3.   ],
复制代码

② 执行命令:
  1. yii migrate --migrationPath=@mdm/admin/migrations复制代码 2、在 backend/views/layouts/left.php 中添加内容① 在 left.php 中找到下面代码:
  2.   <?= dmstr\widgets\Menu::widget(
  3.   //......
  4.   ) ?>
复制代码

② 在后面添加下面代码:
  1. <?php
  2.   use mdm\admin\components\MenuHelper;
  3.   $callback = function($menu){
  4.   $data = json_decode($menu['data'], true);
  5.   $items = $menu['children'];
  6.   $return = ['label' => $menu['name'],'url' => [$menu['route']]];
  7.   //处理我们的配置
  8.   if ($data) {
  9.   isset($data['visible']) && $return['visible']
  10.   = $data['visible'];//visible
  11.   isset($data['icon']) && $data['icon']
  12.   && $return['icon']
  13.   = $data['icon'];//icon
  14.   //other attribute e.g. class...
  15.   $return['options']
  16.   = $data;
  17.   }
  18.   //没配置图标的显示默认图标
  19.   (!isset($return['icon']) || !$return['icon']) && $return['icon']
  20.   = 'fa fa-circle-o';
  21.   $items && $return['items']
  22.   = $items;
  23.   return $return;
  24.   };
  25.   //对菜单menu进行了优化
  26.   echo dmstr\widgets\Menu::widget( [
  27.   'options' => ['class' => 'sidebar-menu'],
  28.   'items' => MenuHelper::getAssignedMenu(Yii:<img src="static/image/smiley/default/shy.gif" border="0" smilieid="8" alt=":$">app->user->id,null, $callback),
  29.   ]
  30.   );
  31.   ?>
复制代码

复制代码3、点击“菜单”,然后点击 创建按钮进行创建菜单

 创建左侧导航栏菜单 左侧菜单导航原理,左侧导航栏权限java,开机菜单导航在哪里,好看的左侧导航,弹性左侧菜单 ecshop小京东教程 8f84f07364119767d51da947ccdaeb96
                               
登录/注册后可看大图


  4、点击“路由”,将以下几个路由写到 auth_item 表(为了分配路由给菜单)

 创建左侧导航栏菜单 左侧菜单导航原理,左侧导航栏权限java,开机菜单导航在哪里,好看的左侧导航,弹性左侧菜单 ecshop小京东教程 47e5ec9469d57f8bddbab92f588267a9
                               
登录/注册后可看大图


  点击“权限”,再点击查看“权限控制”,分配 /admin/menu/*

 创建左侧导航栏菜单 左侧菜单导航原理,左侧导航栏权限java,开机菜单导航在哪里,好看的左侧导航,弹性左侧菜单 ecshop小京东教程 8fcaaf2565c8efd73e3bd2d15330f798
                               
登录/注册后可看大图


  5、点击“菜单”,创建以下子菜单

 创建左侧导航栏菜单 左侧菜单导航原理,左侧导航栏权限java,开机菜单导航在哪里,好看的左侧导航,弹性左侧菜单 ecshop小京东教程 ac59b76c40762d2e548b61fe9411acf7
                               
登录/注册后可看大图



 创建左侧导航栏菜单 左侧菜单导航原理,左侧导航栏权限java,开机菜单导航在哪里,好看的左侧导航,弹性左侧菜单 ecshop小京东教程 cf89c54a1d764d32e8001c52f26dd9cc
                               
登录/注册后可看大图


  * 注意:填写 “Parent” 即父级菜单的名称时要手动选择才行,直接全打上 会保存不了的。比如:先输入“权限”,然后出现下拉菜单就可以选择“权限控制”了。
  6、刷新页面,预览效果:你会发现,多了一个菜单,请删除 left.php 中多余的 <ul></ul>

 创建左侧导航栏菜单 左侧菜单导航原理,左侧导航栏权限java,开机菜单导航在哪里,好看的左侧导航,弹性左侧菜单 ecshop小京东教程 637e27da0cbc966a30f73b69e417eeee
                               
登录/注册后可看大图


  
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

推荐阅读

平台简介

六六下载网(666现在.cn),中国最大的电商设计师交流平台。最活跃的电商设计师学习交流分享社区。集原创作品+灵感图库+经验教程+设计专访+设计培训+社群活动为一体,全方位服务电商设计师。成立3年来,聚集20万电商设计师,定期线下设计沙龙,覆盖北京、上海、广州、杭州等城市计

QQ|Archiver|手机版|小黑屋|666下载网 ( 粤ICP备16097146号-5 )|网站地图  

Powered by 金易德.cn! X3.4  © 2014-2018 深圳市龙岗区金易徳贸易商行   增值电信业务经营许可证:粤B2-20140196

返回顶部 返回列表