0

本番サーバーから 500 エラーが発生しましたが、まだレンダリング中です。私がエラーに行くことができるのは、アクセス規則によるものです。私はこの構成を持っています

public function accessRules()
{
    return array(
        array('allow', 
            'actions'=>array('create','admin','delete','index', 'view','update','users'),
            'roles'=>array('SuperAdmin'),
        ),
        array('allow', 
            'actions'=>array('index', 'view','update','users'),
            'roles'=>array('Admin'),
        ),
        array('deny',  // deny all users
            'roles'=>array('Admin','User'),
        ),
        array('deny',
            'users'=>array('?'),
        )
    );
}

私のエラー設定は次のとおりです: error_reporting(E_ALL & ~(E_NOTICE | E_DEPRECATED | E_STRICT)); ini_set('display_errors','0');

これは500を送信するのではなく、送信する必要があります。奇妙なことは、停止せずに継続してビューをレンダリングすることです。

これは私がロールを作成する方法です $auth=Yii::app()->authManager; $roles = $auth->getRoles();

    if (!isset($roles['Admin']))
        $auth->createRole('Admin', 'Admin', 'return Yii::app()->user->getState("role")=="Admin";');

    if (!isset($roles['SuperAdmin']))
        $auth->createRole('SuperAdmin', 'Super Admin ', 'return Yii::app()->user->getState("role")=="SuperAdmin");');

    if (!isset($roles['User']))
        $auth->createRole('User', 'User', 'return Yii::app()->user->getState("role")=="User");');
    $auth->save();

よろしく。

4

1 に答える 1

0

これは、アクセス ルールの前にフィルター機能を追加していないために発生することがあります。

public function filters() {
    return array(
        'accessControl', // perform access control for CRUD operations
    );
}

これを試すか、そこにある天気を教えてください

于 2013-09-11T19:39:13.963 に答える