Ich muss eine Variable im app_controller von CakePHP setzen und sie dann in meiner Standard-Layoutdatei verwenden.Setze eine Variable im app_controller und verwende sie in einem CakePHP Layout
Gibt es eine Möglichkeit, diese Variable zu setzen?
Ich muss eine Variable im app_controller von CakePHP setzen und sie dann in meiner Standard-Layoutdatei verwenden.Setze eine Variable im app_controller und verwende sie in einem CakePHP Layout
Gibt es eine Möglichkeit, diese Variable zu setzen?
Ich denke, was er meinte war, dass er nicht weiß, wo eine Variable zu setzen, da er nicht in einer bestimmten Funktion in einem Controller ist. Um eine Variable (oder irgendetwas anderes wirklich) überall verfügbar, müssen Sie es in Ihrem AppController so:
function beforeFilter()
{
$this->set('whatever', $whatever);
}
Mehr zu diesen Callback-Funktionen here.
Die Callback-Funktionen in AppController sind der Platz für $ this-> set() - Variablen, die für alle Ihre Ansichten und Layouts verfügbar sein sollen. beforeFilter() wird vor allen Controller-Aktionen aufgerufen. Wenn Sie eine Ansichtsvariable festlegen möchten, nachdem eine Aktion ausgeführt wurde, verwenden Sie beforeRender(). Sie können auf Ihre anderen Ansichtsvariablen im assoziativen Array $ this-> viewVars zugreifen.
function beforeRender() {
$new = "Universal " . $this->viewVars['layoutTitle'];
$this->set('universalTitle', $new);
}
du die Variable festlegen können: $ this-> set (compact ('currentJobId'));
Es wird Array gleichzeitig festlegen, es wird Werte festlegen.