yii2模块的独立配置不生效

WBOY
Freigeben: 2016-06-06 20:06:51
Original
1449 Leute haben es durchsucht

我项目中有一v1模块,在V1.php中的init代码中加载了配置

<code class="php">  parent::init();
  Yii::configure($this, [
    'components'=>[
        'errorHandler' => [
            'class'=>'app\modules\v1\common\ErrorHandler'
        ]
    ]
  ]);</code>
Nach dem Login kopieren
Nach dem Login kopieren

然后我在控制器中加了一行throw new HttpException(403);
最后控制器中怎么没走到我自定义的errorhandle里面呢?
可是我在项目中的config/web.php的components中加入

<code class="php">  'errorHandler' => [
      'class'=>'app\modules\v1\common\ErrorHandler'
  ]</code>
Nach dem Login kopieren
Nach dem Login kopieren

就能够正常走自定义的errorHandler,这是为什么呢?

回复内容:

我项目中有一v1模块,在V1.php中的init代码中加载了配置

<code class="php">  parent::init();
  Yii::configure($this, [
    'components'=>[
        'errorHandler' => [
            'class'=>'app\modules\v1\common\ErrorHandler'
        ]
    ]
  ]);</code>
Nach dem Login kopieren
Nach dem Login kopieren

然后我在控制器中加了一行throw new HttpException(403);
最后控制器中怎么没走到我自定义的errorhandle里面呢?
可是我在项目中的config/web.php的components中加入

<code class="php">  'errorHandler' => [
      'class'=>'app\modules\v1\common\ErrorHandler'
  ]</code>
Nach dem Login kopieren
Nach dem Login kopieren

就能够正常走自定义的errorHandler,这是为什么呢?

v1模块的init改成

<code class="php">parent::init();
Yii::$app->errorHandler->errorAction = 'app\modules\v1\common\ErrorHandler';</code>
Nach dem Login kopieren

试试看

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage