Nette\Web\User a podpora IRole
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Teyras
- Člen | 81
Zdravím,
nešlo by upravit třídy User a Identity tak, aby uměly pracovat s objekty
IRole? Představoval bych si to tak, že bych ve funkci authenticate()
konstruktoru IIdentity jako role předal objekt resp. pole objektů
implementujících IRole. Tím by se zjednodušilo volání isAllowed() při
použití assertions – šlo by to volat např. .
<?php
Environment::getUser()->isAllowed(new Resource('article', 5), 'edit')
?>
Teď je to prakticky použitelné, jediný problém dělá funkce User::isInRole() – isAllowed() i isInRole() získávají seznam rolí přes Identity::getRoles(), ale isInRole() potřebuje ID rolí, ne objekty IRole.
Snad jsem se vyjádřil dost jasně…
Editoval Teyras (8. 7. 2010 16:03)