Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour tout le monde!
Je débute avec Zend framework et je bute sur un petit problème.
Apparemment il serait possible de modifié son menu en fonction des acls que l'on a définie. (En gros de pas faire apparaitre un élément du menu si l'utilisateur connecté est membre et non admin).
Alors pour faire menu, aucun soucis, c'est assez intuitif, et, d'aprés le tuto du site officiel, y integrer les acls aussi. Mais non...
Alors je pense que j'ai du oublier quelque chose... si quelqu'un peut me venir en aide svp !!
Voici mon code :
acl.ini :
[roles] guest = null member = null admin = null [ressources] ; définition des ressources dans le module par défaut index = null album = null auth = null admin = null news = null [guest] allow.auth = null allow.index = null allow.album = index,list ; member hérite de guest [member : guest] ; on interdit le login (le membre est déjà identifié) deny.auth = null allow.index = null allow.news = ajout allow.album = ajout ; admin hérite de member [admin : member] allow.admin = null allow.index = null allow.news = null allow.album = null
navigation.xml :
<?xml version="1.0" encoding="UTF-8"?> <config> <nav> <label>Home</label> <controller>index</controller> <action>index</action> <resource>index</resource> <pages> <album> <label> Albums </label> <controller>album</controller> <action>index</action> <pages> <list> <label>Liste</label> <controller>album</controller> <action>list</action> <resource>album</resource> </list> <ajout> <label>Ajout</label> <controller>album</controller> <action>ajout</action> <resource>album</resource> </ajout> </pages> </album> <news> <label>News</label> <controller>news</controller> <action>index</action> <resource>news</resource> </news> <admin> <label>Client</label> <controller>admin</controller> <action>list</action> <resource>admin</resource> </admin> </pages> </nav> </config>
layout.phtml :
$acl_ini = APPLICATION_PATH.'/configs/acl.ini' ; $acl = new My_Acl_Ini($acl_ini) ; Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl($acl); Zend_View_Helper_Navigation_HelperAbstract::setDefaultRole($role); echo $this->navigation() ->menu();
Alors en fait, quand je ne suis pas connecté (c'est a dire en 'guest' ), le menu album ne s'affiche pas alors que j'autorise l'action 'album/list' pour 'guest'... Je n'arrive pas a comprendre pourquoi !
Donc voila, si vous voyez une erreur ou un oublie (il doit surement y en avoir un ^^) merci de me le dire, et n'hésitez pas a demander si il vous faut des renseignements supplémentaires !
Merci d'avance !!!
Dernière modification par Kei (07-07-2009 15:33:39)
Hors ligne