我正在研究一个yii项目。我在其中使用了RBAC模块进行用户管理。我的用户角色类似于管理员, Superadmin ,销售,经过身份验证,客户。
我希望在登录后根据用户的角色重定向用户。例如,Admin和Superadmin在登录后应将page1视为索引页(默认操作),客户登录后应将page2视为索引页(默认操作) 。我根据用户角色设置了菜单,即哪些菜单选项卡应该对谁可见。
我也知道在yii中设置默认操作。即在main.php文件中,我们必须设置默认控制器操作。但我不明白我该如何解决这个问题。请帮助我。
提前完成。
答案 0 :(得分:0)
一种可能性就是检查REQUEST_URI是否为/并根据角色重定向到适当的控制器和操作。
答案 1 :(得分:0)
我通过这样做得到了它: 在我的站点控制器的索引操作中,我提出了以下逻辑..
public function actionIndex()
{
$getroles=Rights::getAssignedRoles(Yii::app()->user->Id);
foreach($getroles as $getrole){
$getallroles[] = $getrole->name;
}
$count_roles = sizeof(array_intersect(array('admin', 'SuperAdmin', 'Sales'), $getallroles));
$count_roles1 = sizeof(array_intersect(array('customer'), $getallroles));
if($count_roles1){
$this->redirect(array('CategoryImages/showGallery'));
}
else{
$this->redirect(array('Category/admin'));
}
}
根据需要运作。