Problema
Norite pamatyti, ar vartotojas yra prisijungęs.
Jūs žinote, kad „Laravel“ automatiškai išsaugo autentifikuotą vartotoją sesijoje. Norite patikrinti, ar dabartinėje užklausoje vartotojas yra prisijungęs ir patvirtintas.
Sprendimas
Naudokite | _+_ |.
| _+_ | metodas grąžina teisingą arba klaidingą.
jei (Aut::patikrinti())
{
išmetė 'Valio! Jūs esate prisijungę. ';
}
Diskusija
Kai tai darote, užkulisiuose nutinka keletas dalykų.
Pirmiausia „Laravel“ patikrina, ar dabartinė sesija turi vartotojo ID. Jei taip, tada bandoma paimti vartotoją iš duomenų bazės.
Jei nepavyksta, „Laravel“ patikrina slapuką „Prisimink mane“. Jei tai yra, dar kartą bandoma paimti vartotoją iš duomenų bazės.
Tik tuo atveju, jei iš duomenų bazės nuskaitytas galiojantis vartotojas, grąžinama tiesa.
„Svečio“ filtras naudoja šį metodą
„Laravel“ numatytasis svečių filtro įgyvendinimas | _+_ |.
{
jei (Aut::patikrinti()) grįžtiPeradresuoti::į('/');
});
Šis numatytasis diegimas naudojamas, kai norite pridėti filtrą prie maršruto, kuriuo gali naudotis tik svečiai (dar neprisijungę vartotojai). Jei vartotojas yra prisijungęs, jis nukreipiamas į pagrindinį puslapį.