2010-11-13 4 views
2

J'ai une page principale dans le projet Python/Pylons, qui a plusieurs blocs différents (par exemple news/demo/(enregistrement | zone privée)/...).python/pylons - plusieurs contrôleurs pour le modèle

Je pense que chaque bloc doit être généré dans un contrôleur séparé. Comment puis-je appeler une autre méthode de contrôleur dans un contrôleur de page principale?

Répondre

1

Ce que vous voulez faire est HMVC. Je ne suis pas sûr que ce soit facile à faire avec Pylons, puisque c'est MVC.

Si vous avez du code qui est répété dans plusieurs contrôleurs, vous pouvez déplacer une partie de ce code hors du contrôleur (dans les modèles ou un autre module). En outre, si vous utilisez des modèles Mako, vous pouvez réutiliser des parties de modèles en utilisant l'héritage http://www.makotemplates.org/docs/inheritance.html et en utilisant les paramètres http://www.makotemplates.org/docs/defs.html.

0

C'est probablement là que vous commencez à déplacer des blocs de code vers les fonctions de la bibliothèque vers la partie /lib de votre projet Pylons. "Généré par un contrôleur séparé" va probablement trop loin - vous avez simplement besoin de ne pas vous répéter. Essayez d'utiliser les fonctions de la bibliothèque pour vous assurer que les données correctes sont disponibles, puis utilisez les fonctionnalités d'héritage et d'espace de noms de Mako.

Questions connexes