- Újjáéled a Motorola Moto G100
- Milyen okostelefont vegyek?
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Apple iPhone 16 Pro - rutinvizsga
- Xiaomi 14 Ultra - Leica hercegnő
- Google Pixel topik
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Samsung Galaxy S24 - nos, Exynos
- Milliókkal olcsóbb a Model Y Standard Magyarországon
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
Új hozzászólás Aktív témák
-
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
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Revolut
- Crimson Desert - Fókuszban a Golden Star misszió
- Brogyi: CTEK akkumulátor töltő és másolatai
- Battlefield 6
- Xbox Series X|S
- Újjáéled a Motorola Moto G100
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Kezdő fotósok digitális fényképei
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- Alphacool Rise Flat Reservoir D5 - pumpa nélkül
- Dell Pro 14 PC 14" FHD+ IPS Ultra 7 265U 16GB 1TB NVMe IR kam gar
- Újszerű LENOVO Ideapad 3 - 15.6" Full HD IPS - Ryzen 5-5500U - 8GB - 256GB SSD - Win11 - MAGYAR
- Western Digital Black 500GB 3,5"-os hdd-k (
- AKCIÓ ÚJ Bontatlan Macbook Pro 14 M4 MAX 14 32GPU 36GB 1TB Magyar billentyűzet Azonnal átvehető Deák
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- HP EliteBook 840 G7 i5-10210U 16GB 256GB 14" 400nit 100% sRGB 1 év garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 256GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3663, 100% Akkumulátor
- BESZÁMÍTÁS! Intel Core i7 4790K 4mag 8szál processzor garanciával hibátlan működéssel
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest