yii2:在denyCallback

时间:2017-01-29 08:28:06

标签: yii yii2 yii2-advanced-app yii2-basic-app

我使用Yii2框架 这是ShippingController

中的行为功能
  public function behaviors()
        {
        return [
            'access' => [
                'class' => \yii\filters\AccessControl::className(),
                'rules' => [
                    // deny all POST requests
//                        [
//                        'actions' => ['index', 'create'],
//                        'allow' => TRUE,
//                    ],
                        [
                        'actions' => ['index', 'create', 'init'],
                        'allow' => true,
                        'roles' => ['?'],
                        'matchCallback' => function ($rule, $action)
                            {
                            return $action->controller->redirect('action');
                            }
                    ],
                    'denyCallback' => function ($rule, $action)
                        {
                        return $action->controller->redirect('not');
                        }
                // everything else is denied
                ],
            ],
        ];

        }

matchCallback运作良好,但

denyCallback中的

我有这个错误:

错误     调用未定义的方法Closure :: allows()

我的问题是什么???!

1 个答案:

答案 0 :(得分:3)

denyCallback元素移出规则数组之外 它需要与classrules

位于同一级别