4 Stimmen

Yii-Framework: Variable von Controller an View übergeben

Um die Variable an die Login-Ansicht weiterzugeben, verwende ich:

$this->render('login', array('model' => $model));

Aber ich muss auch auf diese Variable im Template-Teil footer.php zugreifen:

Ich versuche es so:

$this->render('footer', array('model' => $model));

Aber wenn ich in footer.php versuche auf die Variable zuzugreifen, erhalte ich den Fehler "Undefinierte Variable"

Was ist falsch?

7voto

Manoj Singh Punkte 263

Sie können eine Controller-Klasse verwenden, um Variablen im Ansichtsvorlage zu übergeben, zum Beispiel

Controller :

SomeController erweitert Controller {

    public function actionIndex() {
          $var1 = 'abc';
          $var2 = '123';
           $this->render('view', 
                           array('var1' => $var1,
                                 'var2' => $var2,
                                ));
    }
}

In der Ansichtsvorlagendatei können Sie auf diese 2 Variablen ($var1 & $var2) mit ihrem Namen zugreifen :

echo $var1; 

echo $var2

5voto

rzelek Punkte 3945

Vorlagen in Yii erhalten Daten vom Controller über den $this Verweis.

something = 'qwerty';
    }
    public function actionA() {
        $this->render('view', array('model' => $model));
    }
}

In der Vorlage:

something; ?>

Bitte werfen Sie einen Blick auf die Standardvorlagen von Yii. Breadcrumbs werden mithilfe von Eigenschaften aus dem Controller angezeigt, daher ist dies wahrscheinlich der beste Weg, um dies zu erreichen.

0voto

Manish Jesani Punkte 1347

MVC-Struktur leitet die Seite nicht direkt um.

Sie erstellen zuerst die Footer-Aktion und leiten dann zur Seite um.

Sie sehen das Demofenster für die Anmeldung in site_controller.php.

Befolgen Sie dies.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X