2017-12-25 7 views
2

Ich weiß, es ist wahrscheinlich super einfach, aber ich habe gerade angefangen Laravel zu benutzen, ich war schon immer auf Codeigniter. Das Problem, das ich habe ist, dass Laravel sagt mir, dass meine Variable nicht definiert ist ...Nicht definierte Variable mit Laravel und Blade

Controller:

public function index() 
{ 

    $data['pageTitle']='Connexion'; 

    return view('login')->with($data); 
} 

Die Linie in login.blade.php betroffen:

@extends('layout.header', $pageTitle) 

Fehler:

"Undefined variable: pageTitle (View: G:\Winginx\home\laravel\public_html\resources\views\login.blade.php)" 

Vielen Dank!

+0

warum sind vorbei Sie ein zweites Argument an die ' erweitert? Richtlinie? btw – lagbox

Antwort

2

Sie erhalten diesen Fehler, weil Sie versuchen, $pageTitle Variable zu verwenden, aber Sie übergeben es nicht an die Ansicht.

Also, um dieses Problem beheben können Sie diese Zeile in der Ansicht ändern:

@extends('layout.header', $data['pageTitle']) 

Oder Sie können zu Verfahren in der Steuerung ändern:

public function index() 
{ 
    return view('login', ['pageTitle' => 'Connexion']); 
} 
+0

Funktioniert nicht, die erste Methode gibt jetzt diesen Fehler: Undefinierte Variable: Daten und zweite tun dasselbe:/ –

+0

@KarylLamoureux Ich bin mir ziemlich sicher, dass Sie diese Fehlermeldung nicht erhalten können. Sie tun etwas falsch, weil der obige Code zu 100% funktioniert. –

+0

Bitte erläutern Sie den Downvote. –