2017-03-28 3 views
1

J'ai un problème avec les données de la page 404.404 page n'obtient pas de données laravel

Handler.php

public function render($request, Exception $e) 
    { 
     if ($this->isHttpException($e)) { 
      $statusCode = $e->getStatusCode(); 
      switch ($statusCode) { 
       case '404': 
        $obj = new \App\Http\Controllers\SiteController(new \App\Repositories\CatalogsRepository(new \App\Catalog)); 
        $obj->template = env('THEME') . '.404'; 
        return response($obj->renderOutput()); 
      } 
     } 
     return parent::render($request, $e); 
    } 

RenderOutput dans SiteController

public function RenderOutput() 
    { 
     $catalogItems = $this->getCatalogs(); 
     $cart_info = $this->CartInfo(); 
     $menu = view(env('THEME') . '.menu')->with(['catalogs' => $catalogItems, 'cart_info' => $cart_info,'title'=>$this->title])->render(); 
     $this->vars = array_add($this->vars, 'cart_info', $cart_info); 
     $this->vars = array_add($this->vars, 'menu', $menu); 

     return view($this->template)->with($this->vars); 
    } 

Lorsque Im connecté, dans les pages régulières que j'ai des liens comme vous déconnecter, mes commandes, informations personnelles, etc .. et si panier a des articles, il montre son montant et la quantité d'articles, mais quand 404 apparaît, c'est comme im pas connecté (avoir des liens de connexion et de connexion) et avoir 0 articles avec 0 quantité dans le panier. Pourquoi cela arrive-t-il?

Répondre

0

C'est seulement parce que Laravel démarre le session si la route a été adapté:

dans votre app/Http/Kernel.php essayer d'ajouter ceci à votre middleware $:

\Illuminate\Session\Middleware\StartSession::class, 
\Illuminate\View\Middleware\ShareErrorsFromSession::class 
+0

Merci beaucoup ! Travaillé comme un charme;) – Batmannn