Yii对我来说非常新颖。我正在开发一个真实世界的例子。 我有一个表,因此一个模型,称为用户从数据库中获取数据。数据库中的三个主要字段是用户名,密码和userRole。 用户名和密码工作得很好。 我需要查看数据库中的userRole并基于此,为用户分配一个角色。 例如用户的userRole字段== 1,用户是admin,可以创建,读取,更新和删除(CRUD)。 但是,如果用户的userRole == 2,用户可以更新并创建但不能删除。 我试图在UserController.php中使用'expression'ib accessRules()来做到这一点,但它没有奏效。 然后我读到它,发现我应该做的角色。 这就是我写的:如何从Yii的数据库中获得用户许可
public function accessRules()
{
$auth = Yii::app()->authManager;
$auth->createOperation('createUser','create a user');
$auth->createOperation('updateUser','update a user');
$auth->createOperation('deleteUser','delete a user');
$role=$auth->createRole('creator');
$role->addChild('createUser');
$role=$auth->createRole('updater');
$role->addChild('updateUser');
$role=$auth->createRole('deleter');
$role->addChild('deleteUser');
return array(
................................
array('allow',
'actions'=>array('create','update'),
'users'=>array('@'),
'roles'=>????,
.....................
???是我不知道该怎么做的地方。 我是否在正确的位置/文件中定义了createOperation/addChild? 如何在返回数组中使用'角色'? 也应该从哪里得到数据库的userRole?
我拼命地寻找答案,因为Yii的论坛不活跃
谢谢