2017-09-23 5 views
0

Je suis vraiment désespérée. Je migre un projet laravel de 5.2 à 5.5 et tout va à la perfection. Mais j'ai un problème pour utiliser un objet Request dans le constructeur du contrôleur. Il semble que les contrôleurs ignorent le middleware si j'utilise l'objet Request. J'ai essayé d'utiliser $ this-> middleware ('api'); mais ne fonctionne pas. Mon middleware «api» pousse l'objet utilisateur dans la requête. Dans la méthode construct $ req-> user est nul!Demande dans le constructeur du contrôleur Laravel 5.5

Les routes api sont correctement définies et les autres contrôleurs fonctionnent!

Qu'ai-je oublié?

Répondre

0

Vous pouvez utiliser l'objet Demande dans le contrôleur dans une fonction de rappel dans la méthode $this->middleware(). Essayez ceci:

public function __construct(){ 
    $this->middleware(function($req, $next){ 
    $this->commerce = new Commerce($req->user->currency()->currency); 

    return $next($request); 
    }); 
} 
+0

J'ai essayé même méthode mais avec le code middleware ... ne fonctionne pas! –