it-swarm.com.de

Wie kann ich die yii-debug-toolbar in einer bestimmten Ansicht deaktivieren?

Wie kann ich yii-debug-toolbar für eine bestimmte Ansicht deaktivieren, insbesondere für teilweise gerenderte Ansichten?

Ist das möglich?

p.s. Yii-debug-toolbar existiert leider nicht als Tag weiter unten.

14
Lonely

Fügen Sie dies in Ihre Layout- oder Ansichtsdatei ein:

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

Dadurch wird der Rückruf, der die Symbolleiste wiedergibt, aus dem Ereignis entfernt, das am Ende des Layouts ausgeführt wird. Dort haben Sie $this->endBody().

39
spikyjt

Entfernen oder kommentieren Sie diese beiden Zeilen aus /config/web.php aus.

$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

Ich habe einen besseren Weg gefunden. Setzen Sie das überall ein:

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

Und dies macht keine Dateien in/Runtime/Debug

4
Zneiat

wenn Sie vom Frontend entfernen möchten, ist dies der Weg:

  1. Gehe zu Frontend/config/main-local.php
  2. Kommentieren Sie diese beiden Zeilen aus:

main-local.php

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

Dadurch wird die Debugleiste vom Frontend entfernt.

0
Umair Hamid