Probléma
Azt szeretné látni, hogy egy felhasználó bejelentkezett -e.
Tudja, hogy a Laravel automatikusan megtartja a hitelesített felhasználót a munkamenetben. Azt szeretné ellenőrizni, hogy az aktuális kérelemhez bejelentkezett és hitelesített felhasználó van -e.
Megoldás
Használja | _+_ |.
A | _+_ | metódus igaz vagy hamis értéket ad vissza.
ha (Auth::jelölje be())
{
kidobta 'Hurrá! Be vagy jelentkezve. ';
}
Vita
Ennek során számos dolog történik a színfalak mögött.
Először a Laravel ellenőrzi, hogy az aktuális munkamenet rendelkezik -e felhasználói azonosítóval. Ha igen, akkor megpróbálják lekérni a felhasználót az adatbázisból.
Ha ez nem sikerül, akkor a Laravel ellenőrzi az emlékezz rám cookie -t. Ha ez megvan, akkor ismét megpróbálják lekérni a felhasználót az adatbázisból.
Csak akkor kerül visszaadásra, ha érvényes felhasználó kerül lekérésre az adatbázisból.
A „vendég” szűrő ezt a módszert használja
A Laravel a vendégszűrő alapértelmezett megvalósítását biztosítja a | _+_ | nyelvben.
{
ha (Auth::jelölje be()) VisszatérésÁtirányítás::nak nek('/');
});
Ez az alapértelmezett megvalósítás akkor használatos, ha szűrőt szeretne hozzáadni egy olyan útvonalhoz, amelyhez csak a vendégek (más néven nem bejelentkezett felhasználók) férhetnek hozzá. Ha egy felhasználó bejelentkezett, akkor átirányítja a kezdőlapra.