Hirdetés
- gban: Ingyen kellene, de tegnapra
- Meggyi001: Amire figyelned kell Párizsban is...
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- sziku69: Szólánc.
- Luck Dragon: MárkaLánc
- Mr Dini: Mindent a StreamSharkról!
- Gurulunk, WAZE?!
- Parci: Milyen mosógépet vegyek?
- bkercso: Tápszűrő-5 SMPS-hez
Új hozzászólás Aktív témák
-
Neil Watts
veterán
Sziasztok!
Laravelben igencsak kezdo vagyok, igy nezzetek el nekem ha marhasagot kerdezek/irok.
Projektemet Laravel 8/Jetstream/Laratrust komboval fejlesztem, es az RBAC megvalositasa kozben akadtam meg:A CreateNewUser.php-t igy modositottam:
$user = User::create(['username' => $input['username'],'email' => $input['email'],'password' => Hash::make($input['password']),]);$user->attachRole('visitor');return $user;Lathato, hogy a jogot hozzaadja. Regisztracio utan a beepitett email kuldo automatizmussal egy megerosito emailt kuldok. Amikor rakattintok az emailben levo linkre, akkor a /dashboard-ra kerulok.
Aztan itt, a Profile-ban meg kell adnom tovabbi adataimat (migration-be raktam oket).
A UpdateUserProfileInformation vonatkozo sorai:
if ($input['email'] !== $user->email &&$user instanceof MustVerifyEmail) {$this->updateVerifiedUser($user, $input);} else {if ($user->first_login === false) {$user->forceFill(['first_login' => true,])->save();}
es$user->forceFill(['firstname' => $input['firstname'],'middlename' => $input['middlename'],'lastname' => $input['lastname'],'username' => $input['username'],'email' => $input['email'],'landlinetel' => $input['landlinetel'],'mobiletel' => $input['mobiletel'],'mandatory_fields_filled' => true,])->save();Auth::logout();Session::flush();redirect(route('login'));Elmeletileg (ill. a dokumentacio alapjan is ugy tunik, hogy ezt igy illik csinalni errefele, illetve SO-n, meg egyeb forumokon is ezt talaltam: Az auth logout kijelentkeztet, utana eldobom/lezarom a session-t, hogy ne lehessen vele visszaelni, majd atiranyitok.
LoginResponse.php:
public function toResponse($request){$user = auth()->user();if ($user->mandatory_fields_filled && $user->hasRole('admin')) {$home = '/admin';return redirect()->intended($home);} elseif ($user->mandatory_fields_filled && $user->hasRole('user')) {$home = '/user';return redirect()->intended($home);} elseif ($user->hasRole('visitor')) {if ($user->mandatory_fields_filled) {$user->detachRole('visitor');$user->attachRole('user');}$home = '/dashboard';return redirect()->intended($home);} else {$home = '/';return redirect()->intended($home);}}Ha atirom a user_role-ban bejelentkezes elott a felhasznalohoz tartozo jogot (mondjuk visitorrol userre) akkor a bejelentkezesnel a /userre redirectel (ami 404, mivel meg nincs kesz), am ha nyomok egy visszat a bongeszoben, akkor a korabban bejelentkezett user sessionjebe dob vissza.
Van Laravelnel erre valami szep megoldas, amivel normalisan meg lehet csinalni a bejelentkezeskori hitelesitest?Eletem elso Laravel-es tanulo projektje ez, ugyhogy kerlek ne lojetek.

Koszi!
Udv.
Új hozzászólás Aktív témák
- Lenovo ThinkPad T14s Gen 3 i5-1245U 14" FHD+ 16GB 512GB 1 év teljeskörű garancia
- BESZÁMÍTÁS! Akár részletfizetés 0% THM ÚJ AMD RYZEN AM4 processzorok 3 év garanciával 27% áfaval
- Dell Precision 5570! 4K Touch / i7-12800H / RTX A2000 / 32GB DDR5 / 512GB NVMe! BeszámítOK
- Samsung Galaxy S22 Ultra 512GB,Használt,Adatkabel,12 hónap garanciával
- Dell Latitude 5530 Core i5 1245U, 16GB RAM, SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Van Laravelnel erre valami szep megoldas, amivel normalisan meg lehet csinalni a bejelentkezeskori hitelesitest?
