這是我在Yii框架手冊中找到的代碼:我應該在Yii框架中將角色代碼放在哪裏?
$auth=Yii::app()->authManager;
$auth->createOperation('createPost','create a post');
$auth->createOperation('readPost','read a post');
$auth->createOperation('updatePost','update a post');
$auth->createOperation('deletePost','delete a post');
$bizRule='return Yii::app()->user->id==$params["post"]->authID;';
$task=$auth->createTask('updateOwnPost','update a post by author himself',$bizRule);
$task->addChild('updatePost');
$role=$auth->createRole('reader');
$role->addChild('readPost');
$role=$auth->createRole('author');
$role->addChild('reader');
$role->addChild('createPost');
$role->addChild('updateOwnPost');
等。 問題是我應該在哪裏放置用於創建角色,任務等的代碼?
該文檔陳述「因此,我們只需要運行上面的代碼一次,而不是每個請求。「 - 我認爲一個單獨的控制檯命令可能是一個比控制器更好的地方(在控制器中的位置,你會建議把它放在哪裏?) – DCoder 2012-04-10 19:57:31
在這個代碼的actionInit()中,然後運行init命令在同一個控制器的其他動作之前,我同意你這個單獨的控制檯命令可能是一個更好的地方,在這種情況下,看看這個擴展:http://www.yiiframework.com/extension/auth-init - 命令 – maxdangelo 2012-04-10 20:13:20