Použití Identity
- kravčo
- Člen | 721
_Martin_ napsal(a):
Třída
Identity
je potomek třídy Object, takže přes univerzální settery a gettery můžeš nastavit téměř cokoliv:$identity->id = 1234; $identity->sex = 'male'; ...
Len doplním, že to nie je kvôli dedeniu z Nette\Object, ale vďaka implementovaniu vlastného úložiska dát, totiž Nette\Object (a potomkovia) pri prístupe k nedeklarovanej premennej vyhadzuje výnimku.
- _Martin_
- Generous Backer | 679
kravco napsal(a):
Len doplním, že to nie je kvôli dedeniu z Nette\Object, ale vďaka implementovaniu vlastného úložiska dát, totiž Nette\Object (a potomkovia) pri prístupe k nedeklarovanej premennej vyhadzuje výnimku.
Pravda, trochu jsem to zmotal s tím, že v Identity můžeš měnit
i vlastnost name pomocí $identity->name
– a to je díky
dědění od Object (že se volá metoda $identity->getName()
).
Ale ty vlastní vlastnosti se mění díky setterům a getterům přímo té
třídy Identity. Takže díky za opravení=)
- 2bfree
- Člen | 248
asi jsem uplne hloupy, ale kdyz se uzivatel prihlasi, tak do Identity ulozim treba Locales uzivatele. Jak si je pak v Presenteru getnu?
zkousel jsem vsechno mozne a uz vazne nevim.
Mohl by nekdo napsat manual pro debila, jak spravne nasetovat promennou a pak jak ji v prezenteru getnout?
diky moc vsem
- Ondřej Mirtes
- Člen | 1536
$identity = Environment::getUser()->getIdentity();
BTW: Nová identita jde zakládat taky pomocí asociativního pole:
return new Identity($name, $role, array(
'id' => $id,
'blabla' => $blabla,
));
- Sentinel
- Člen | 5
Co se týká identity taky bych se rád zeptal.
může mít uživatel přiřazené dvě role? třeba (blogEditor – role co by
umožňovala editovat blog, a galleryEditor co by umožňovala editovat galerii?
kdy obě role by měli předka user který by mohl prohlížet obě sekce?
Díky
//možná se na to dívám ze špatnýho úhlu, tak se omlouvam jestli to působí zamotaně.
- jasir
- Člen | 746
Sentinel napsal(a):
Co se týká identity taky bych se rád zeptal.
může mít uživatel přiřazené dvě role? třeba (blogEditor – role co by umožňovala editovat blog, a galleryEditor co by umožňovala editovat galerii? kdy obě role by měli předka user který by mohl prohlížet obě sekce?
- kuty
- Člen | 7
Prosim o radu, snazim se vytvoreni identity a at delam, co delam, ulozi se mi vzdy poze prvni polozka identity – name … Data taham z databaze a mam overeno, ze select je v poradku, proc mi nefunguje nasledujici konstrukce? S nette jsem zacatecnik :-(
return new Identity($row->password, $row->role, array(
'id' => $row->user_id,
'realname' => $row->name,
)); // vratime identitu
---------------------
............
---------------------
echo $identity->name; // vypise
echo $identity->role; // nevypise
echo $identity->user_id; // nevypise
Editoval kuty (25. 11. 2009 18:37)
- _Martin_
- Generous Backer | 679
kuty napsal(a): …
Ahoj, takže:
- proč do položky pro jméno vkládáš heslo???
- uživatel může mít více rolí, takže použij
$identity->roles
(vrací pole). user_id
je položka v řádku z DB, ale do identity ji vkládáš už jen jako id (viz. to pole). Takže použij$identity->id
.
- kuty
- Člen | 7
_Martin_ napsal(a):
kuty napsal(a): …
Ahoj, takže:
- proč do položky pro jméno vkládáš heslo???
- uživatel může mít více rolí, takže použij
$identity->roles
(vrací pole).user_id
je položka v řádku z DB, ale do identity ji vkládáš už jen jako id (viz. to pole). Takže použij$identity->id
.
To heslo byl jen test, jestli se meni obsah identity :-) Ve vyslednem kodu mam samozrejme name, jinak diky, uplne zustavam stat, jaky hovadiny clovek v roztrzitosti naplaca ;-)