di siteController yang ane buat kan ada beberapa action… salah satunya actionIndex… rencananya actionIndex ini ga bisa diliat sebelum seseorang melakukan login…
Nah, untuk itu ane pake extension RIGHTS… ane pake allowedaction nya seperti di bawah…
public function allowedActions()
{
if(Yii::app()->user->checkAccess('Site.Index')){
return 'index,login,error,logout';
}
else{
return 'login,error,logout';
}
}
tapi begitu masuk malah dapet error 403… Gmana ya ? Apa yang salah ya kira2 ?
public function filters()
{
return array(
'accessControl', // perform access control for actions
);
}
public function accessRules()
{
return array(
array('allow', // allow authenticated user to perform 'index' actions
'actions'=>array('index'),
'users'=>array('@'),
array('deny', // deny all users
'users'=>array('*'),
),
);
}
Atau kalau agan udah buat roles-nya di Rights, tinggal diubah menjadi kurang lebih seperti ini:
iya… soalnya kemaren sempet bingung gmana caranya si user yang di roles Authenticated boleh akses actionIndex… sedangkan yang roles Guest tidak boleh akses actionIndex…
Solved… dengan dihapus function allowedactionnya… dan ditambahkan defaultRoles di config/main.php nya