Quelles sont les meilleures pratiques/suggestions/techniques pour implémenter un fil d'Ariane pour une application ZendFramework utilisant Zend_Navigation? comment et où est la meilleure méthode pour définir la hiérarchie des pages?comment implémenter des fil d'Ariane en utilisant Zend_Navigation
Répondre
J'ai fait 2 messages sur ce sujet.
http://blog.ekini.net/2009/05/25/zend-framework-making-the-built-in-breadcrumb-helper-work/
Les deux sont des expériences du monde réel. Pour moi, le fichier XML était plus facile à comprendre.
Obtenir mie de pain est assez facile:
- vous inscrire votre objet
Zend_Navigation
que vous avez créé dans votre bootstrap (ou un autre endroit) dans laZend_Registry
avec la cléZend_Navigation
. De cette façon, l'objet sera rattrapé par tous les assistants de vue de navigation. Si vous utilisez le nouveau bootstrappingZend_Application
, vous pouvez simplement utiliser la ressourceZend_Application_Resource_Navigation
pour configurer la navigation. Réglez simplementresources.navigation.storage.registry = true
dans votre configuration. vous pouvez alors simplement
echo $this->navigation()->breadcrumbs()
dans votre point de vue ou d'un script de mise en page.
Parler de la façon de définir la hiérarchie de la page, je dirais que si vous avez un site en quelque sorte plus petit et plus statique, vous pouvez simplement définir les pages de votre configuration (lors de l'utilisation de la nouvelle Zend_Application
-bootstrapping- approche):
resources.navigation.pages.home.label = "Home"
resources.navigation.pages.home.action = "index"
resources.navigation.pages.home.controller = "index"
resources.navigation.pages.login.label = "Login"
resources.navigation.pages.login.action = "login"
resources.navigation.pages.login.controller = "users"
resources.navigation.pages.users.label = "Users"
resources.navigation.pages.users.action = "list"
resources.navigation.pages.users.controller = "users"
resources.navigation.pages.users.pages.show.label = "Show"
resources.navigation.pages.users.pages.show.action = "show"
resources.navigation.pages.users.pages.show.controller = "users"
...
Sinon, vous pouvez utiliser un fichier de configuration supplémentaire ou vous pourriez construire votre hiérarchie de page dans un plugin-contrôleur frontal ou une aide d'action, par exemple si vous disposez d'une structure de site relativement importante et que vous ne souhaitez pas instancier le sitemap complet sur chaque requête. De cette façon, vous pouvez également insérer des pages dynamiques dont les étiquettes sont créées dynamiquement en fonction des paramètres de la requête.
Bonne réponse. Nous avons un plugin de contrôleur qui génère le conteneur de navigation pour l'ensemble du site et le met en cache pour les demandes suivantes. Je recommande vivement la solution de configuration pour les petits sites. –
- 1. Comment implémenter un comparateur utilisant des génériques?
- 2. Comment implémenter l'adressage WS en utilisant WCF?
- 3. zend_navigation et l'attribut onclick
- 4. Comment implémenter l'OO en Javascript en utilisant un framework prototype?
- 5. Comment implémenter des rappels en Java
- 6. Comment implémenter une radio internet en utilisant java
- 7. Comment implémenter un intercepteur d'audit en utilisant iBATIS?
- 8. Comment implémenter les colonnes ChangeTime et ChangeUser en utilisant NHibernate?
- 9. Comment implémenter la pagination en utilisant un tableau HTML?
- 10. Comment implémenter P2P en C#?
- 11. Comment implémenter quicksort en utilisant un fichier batch?
- 12. Comment implémenter openID en utilisant openid4java dans GSP
- 13. Comment [et où] implémenter une validation en utilisant ModelBinder
- 14. comment implémenter la manipulation d'image 3D en utilisant Silverlight?
- 15. Puis-je implémenter un fil d'Ariane en utilisant dijit.layout.StackContainer dans Dojo? Y a-t-il de meilleurs moyens?
- 16. Comment tuer un fil instantanément en C#?
- 17. Comment implémenter la priorisation des tâches en utilisant un ExecutorService dans Java 5?
- 18. Comment implémenter des énumérations COM sécurisées?
- 19. Comment implémenter is_empty() en PHP?
- 20. Comment implémenter OpenID en Java
- 21. NHibernate - Implémenter la requête "NOT IN" en utilisant ICriteria
- 22. Comment implémenter des en-têtes précompilés dans votre projet
- 23. Comment puis-je implémenter des services Web en Perl?
- 24. Comment puis-je implémenter des métaclasses en C++?
- 25. Comment implémenter des événements via l'interface en C#?
- 26. Comment implémenter une pile générique en C#?
- 27. .NET: Comment avoir des données de fil principal de signal de fil de fond est disponible?
- 28. Comment décompresser des données en utilisant z lib en symbian
- 29. Débogage sans fil des applications Windows Mobile
- 30. Comment implémenter autoscroll dans DataGridView?
J'ai trouvé en utilisant le Zend_Config_XML et un fichier XML pour la navigation config est un moyen facile de le faire. Merci. – farzad
remercie farzad. Bien que les INI soient plus courtes à écrire (pas de balises fermantes, etc.), je trouve le fichier XML plus simple à comprendre et à implémenter. – wenbert