So bekomme ich normalerweise den aktuellen Benutzer mit Auth::user()
und wenn ich feststellen, ob ein Benutzer tatsächlich angemeldet ist Auth::check
. Dies scheint jedoch in meinem AppServiceProvider
nicht zu funktionieren. Ich verwende es, um Daten über alle Ansichten hinweg zu teilen. Ich var_dump
sowohl Auth::user()
und Auth::check()
während ich eingeloggt bin und bekomme NULL
und false
. Wie kann ich den aktuellen Benutzer in meine AppServiceProvider
bekommen? Wenn das nicht möglich ist, wie erhalten Sie Daten, die für jeden Benutzer eindeutig sind (Daten, die sich nach user_id
unterscheiden) über alle Ansichten hinweg. Hier ist mein Code zur Klarstellung.Laravel - So erhalten Sie aktuellen Benutzer in AppServiceProvider
if (Auth::check()) {
$cart = Cart::where('user_id', Auth::user()->id);
if ($cart) {
view()->share('cart', $cart);
}
} else {
view()->share('cartItems', Session::get('items'));
}
Sie müssen eine benutzerdefinierte Middleware dafür erstellen, siehe die Diskussionen: https://laracasts.com/discuss/channels/laravel/using-auth-in-service-provider-to-get-user-object, https : //github.com/laravel/framework/issues/7906 – Burak