お問い合わせフォームやその他のユーザー入力フォームと同じように、標準フォームを作成する方法を知っています。しかし、私はユーザーが私たちのサイトで「製品」を作成できるフォームを作成したいと思います。問題は、このフォームには管理者だけがアクセスできる必要があるということです。これを制限するにはどうすればよいですか?
2 に答える
2
class SomeController extends Controller {
public function filters()
{
return array(
'accessControl',
);
}
public function accessRules()
{
return array(
array('allow',
'actions' => array('actions_with_public_access'),
'users' => array('*'),
),
array('allow',
'actions' => array('action_with_form'),
'roles' => array('admin')
),
array('deny',
'users' => array('*'),
),
);
}
}
于 2012-11-14T09:22:37.623 に答える
1
メインコントローラーのRBACをチェックしないのはなぜですか?このようなもの:
public function YourAdminOnlyController(){
public function init(){
if(Yii::app()->user->checkAccess('your_role_admin')){
}else
$this->redirect(array('/site/message','txt'=>'access denied. only admins.'));
}
}
これは、init()を使用しない簡単な方法ですが、私の意図は主要なアイデアを送信することです。 また、accessControlルールを使用するだけでもそれを行うことができます。
于 2012-11-14T15:01:43.603 に答える