让我们先看看具体的问题。
添加角色是角色菜单的一部分。在添加角色的
执行过程中如何选择此菜单的角色
的adminlte左侧导航
创建、查看、和其他行动不能定位到索引模块(左二级导航无法定位)
如果你遵循我们的
教程,下一个问题不是问题。首先,我们将看看如何
处理左侧菜单菜单。
使用MDM
管理 menuhelper
组件;
< PHP
$ =
函数($菜单){
由于
空间有限,这里在原始源代码中省略了。
};
在这里,我们开始编写
优化的菜单菜单
回声dmstr
工具菜单::Widget(
选项= > {阶级> 'sidebar-menu},
项目= > menuhelper::getassignedmenu(Yii::应用程序-> ->美元的
用户ID,null,美元回调),
> };
看到这里,我们不妨打开
文件dmstr 工具菜单来看看这是如何使菜单选择很多学生离开。
保护功能isitemactive($项)
{
如果(isset($项{ 'url})is_array($项{ 'url'} isset(){ } $项'url{ 0 })){
/……
如果($ arrayroute { 0 }!= $ arraythisroute { 0 }){
返回false;
}
如果(isset($ arrayroute { 1 })$ arrayroute { 1 }!= = $ arraythisroute { 1 }){
返回false;
}
如果(isset($ arrayroute { 2 })$ arrayroute { 2 }!= = $ arraythisroute { 2 }){
返回false;
}
/……
返回true;
}
返回false;
}
看,看看上面的代码,也就是说,当当前
路径与菜单菜单
激活时,左边菜单被激活。
考虑到我们在开始时讨论过很多合作伙伴的问题,我们只需要稍微
调整代码来
控制控制器而不是动作,但是我们不能
修改源代码。我们怎么做得好又热又冷。
在这里,我们将dmstr 工具 menu.php文件后端 menu.php组件,然后修改isitemactive
方法按以下方法
保护功能isitemactive($项)
{
如果(isset($项{ 'url})is_array($项{ 'url'} isset(){ } $项'url{ 0 })){
/……
重写
路由,是否将判断高亮
显示为控制器而不是动作。
routecount美元=计数($ arrayroute);
如果($ routecount = = 2){
如果($ arrayroute { 0 }!= $ arraythisroute { 0 }){
返回false;
}
} elseif($ routecount = = 3){
如果($ arrayroute { 0 }!= $ arraythisroute { 0 }){
返回false;
}
如果(isset($ arrayroute { 1 })$ arrayroute { 1 }!= = $ arraythisroute { 1 }){
返回false;
}
{人}
返回false;
}
/ /如果($ arrayroute { 0 }!= $ arraythisroute { 0 }){
返回/ false;
}
/ /如果(isset($ arrayroute { 1 })$ arrayroute { 1 }!= = $ arraythisroute { 1 }){
返回/ false;
}
/ /如果(isset($ arrayroute { 2 })$ arrayroute { 2 }!= = $ arraythisroute { 2 }){
返回/ false;
} / /
/……
返回true;
}
返回false;
}
我们在菜单左侧引用的菜单文件将它修改为后端 菜单
使用后端组件菜单;
回声菜单::小部件(
选项= > {阶级> 'sidebar-menu},
项目= > menuhelper::getassignedmenu(Yii::应用程序-> ->美元的用户ID,null,美元回调),
});
去试试我们的问题。