Laravel 5.3 以降、コントローラーの __construct()
メソッドでは Auth::check()
および Auth::user()
を使用できません。 (セッションが動作を開始していないため)
(コントローラー セクションの手順については、公式ドキュメントを参照してください。ただし、この方法はこのシナリオには適用できません)
すべての関数を記述するのが面倒すぎる
リーリー現時点で唯一の怠惰な方法は、Controller グローバル変数です。Google では、誰かが以前に App::before()
メソッドを使用してこれを実行していたことを発見しましたが、このメソッドはキャンセルされたようです5.4?
Laravel 5.4 でこれを実装する方法を知っている人はいますか?
Config を使用して実装されたものはすべて分割されています。明らかにここでは適切ではありません。
ringa_lee2017-06-05 11:11:17
Laravel 中国で提供されたソリューションを提供してくれた @安正超に感謝します: Laravel 5.3+ コントローラーでログイン ユーザーを取得する方法
仅有的幸福2017-06-05 11:11:17
まず第一に、ユーザー認証はミドルウェアを通じて完全に制御でき、それをコントローラーのコンストラクターに入れるのは適切ではありません。
さらに、Container
はインスタンスを保存するだけでなく、いくつかのグローバル変数も保存できるのは良いことです。