Php 如何根据yii中登录的用户角色设置不同的索引页

Php 如何根据yii中登录的用户角色设置不同的索引页,php,yii,roles,rbac,Php,Yii,Roles,Rbac,我正在做一个yii项目。我在其中使用了RBAC模块进行用户管理。我的用户角色有管理员、超级管理员、销售、认证、客户 我想在登录后根据用户的角色重定向用户。例如,管理员和超级管理员在登录后应将第1页视为索引页默认操作,而客户在登录后应将第2页视为索引页默认操作。我已根据用户角色设置菜单,即哪些菜单选项卡对谁可见 我也知道在yii中设置默认操作。i、 在main.php文件中,我们必须设置默认的控制器操作。但我不明白我该如何解决这个问题。请帮我做这个 Thanx提前。一种可能是检查请求URI是否正确

我正在做一个yii项目。我在其中使用了RBAC模块进行用户管理。我的用户角色有管理员、超级管理员、销售、认证、客户

我想在登录后根据用户的角色重定向用户。例如,管理员和超级管理员在登录后应将第1页视为索引页默认操作,而客户在登录后应将第2页视为索引页默认操作。我已根据用户角色设置菜单,即哪些菜单选项卡对谁可见

我也知道在yii中设置默认操作。i、 在main.php文件中,我们必须设置默认的控制器操作。但我不明白我该如何解决这个问题。请帮我做这个


Thanx提前。

一种可能是检查请求URI是否正确,并根据角色重定向到相应的控制器和操作。

我通过以下操作使其正常工作: 在站点控制器的索引操作中,我使用了以下逻辑

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')); 

    }
}

它按要求工作

谢谢你的快速回复。