it-swarm.dev

Jak mogę wyłączyć pasek narzędzi yii-debug w określonym widoku?

Jak mogę wyłączyć yii-debug-toolbar w określonym widoku, zwłaszcza w częściowych widokach renderowanych?

Czy to możliwe?

p.s. Yii-debug-toolbar niestety nie istnieje jako tag poniżej.

14
Lonely

Umieść to w swoim układzie lub wyświetl plik:

if (class_exists('yii\debug\Module')) {
    $this->off(\yii\web\View::EVENT_END_BODY, [\yii\debug\Module::getInstance(), 'renderToolbar']);
}

Powoduje to usunięcie wywołania zwrotnego, które renderuje pasek narzędzi ze zdarzenia uruchamianego na końcu układu, w którym znajduje się funkcja $this->endBody().

39
spikyjt

Po prostu usuń lub skomentuj te dwie linie z /config/web.php

$config['bootstrap'][] = 'debug';
$config['modules']['debug'] = 'yii\debug\Module';
7
Tanvir Rahman
public function beforeAction($action) {

    if ( $action->controller->id=='elfinder' && Yii::$app->getModule('debug') )
        Yii::$app->getModule('debug')->instance->allowedIPs = [];
    return parent::beforeAction($action);
}
6
Goodini

Znalazłem lepszy sposób. Umieść to w dowolnym miejscu:

Yii::$app->log->targets['debug'] = null;

I to nie tworzy plików w/runtime/debug

4
Zneiat

jeśli chcesz usunąć z przodu, to jest to sposób:

  1. Przejdź do frontend/config/main-local.php
  2. Skomentuj te dwie linie:

main-local.php

  $config['bootstrap'][] = 'debug';    
  $config['modules']['debug'] = 'yii\debug\Module';

Spowoduje to usunięcie paska debugowania z frontonu.

0
Umair Hamid