2016-06-20 12 views
0

Hey Ich möchte das aktuelle Anfrageobjekt als die Fassade nicht die statische Weg ($request nicht Request::) in einer benutzerdefinierten 404-Blade-Datei verwenden.Aktuelle Anfrage in 404 Seite

Ich weiß nicht, ob ich es auf die Fehlerbehandlung hinweisen kann oder gibt es eine Möglichkeit, dieses Objekt zu erstellen?

Sollte/könnte ich es über die Datei Expections/Handler.php tun?

Ich habe Here folgende Antwort gefunden:

//Create a view and set this code in app/Exception/Handler.php : 

/** 
* Render an exception into a response. 
* 
* @param \Illuminate\Http\Request $request 
* @param \Exception $e 
* @return \Illuminate\Http\Response 
*/ 
public function render($request, Exception $e) 
{ 
    if($e instanceof NotFoundHttpException) 
    { 
     return response()->view('missing', [], 404); 
    } 
    return parent::render($request, $e); 
} 

//Set this use to get it working : 

use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; 

Ist dies der richtige Weg, es zu tun?

Antwort

1

Ja, Sie können es vom Handler tun. Im Inneren des render() Methode:

if ($e instanceof NotFoundHttpException) { 
    return response()->view('your.view.name', $dataYouWantToPass); 
} 
+0

ist, dass die "Laravel" Art und Weise zu handhaben? –

+0

@ eric.itzhak Absolut, Sie können es in der Dokumentation https://laravel.com/docs/5.2/errors#the-exception-handler lesen. – TheFallen

+0

Vielen Dank für Ihre Hilfe. –