Вот решил попробовать Yii . На практике решил сделать cms`ку для сайта. Возникла такая проблема:
Использую CPhpAuthManages. При этом все страницы у админки наследуются от контроллера в котором прописано:
public function filters()
{
return Array(
'accessControl',
);
}
public function accessRules()
{
return Array(
Array(
'allow',
'roles'=>Array('admin')
),
Array(
'allow',
'actions'=>Array('login','loginProccess'),
'users'=>Array('*')
),
Array(
'deny',
'users'=>Array('*')
),
);
}
Создал файл auth.php где надо:
return array(
'admin' => array(
'type' => CAuthItem::TYPE_ROLE,
'description' => 'Администратор'
)
);
Т.е. как я прочитал из документации, таким образом я запретил все действия (кроме login, loginProccess) для пользователей не имеющих роль admin.
В настройках поставил loginUrl = /admin/login/
Все это работает.
Теперь пользователь может вводит логин и пароль, если они введены корректно, то проходит присвоение роли admin:
Yii::app()->authManager->assign('admin',Yii::app()->user->id);
Но вот после этого, перейдя например на адрес /admin/login/ на экран вываливается сообщение о том что у меня недостаточно прав для выполнения действия. Вопрос: в чем проблема может быть?
При этом, до этого я пробовал использовать CDbAuthManager - все работало.