Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Jusque là, je pensais que les view helpers ne servaient qu'à générer du html par les methodes appropriées, genre :
formFile($name, $value, $attribs), formHidden($name, $value, $attribs), formRadio($name, $value, $attribs, $options)
Je n'utilse pas cette approche, car pour mes applis, j'utilise un moteur de templates, et c'est le graphiste qui gère tout ce qui relève du html dans les templates, je lui fournis juste les données dont il a besoin.
Mais ça fait plusieurs fois, que je vois sur le forum (Nabble) des gens qui mentionnent les Zend_View Helpers pour autres choses, notamment dans la discussion "Implementing complex Views with ZF", qui m'intéresse au plus haut point .
A un moment, dans la discussion Padraic Brady dit :
"...This works if you allow Views to access the Model directly - which isn't forbidden so long as you follow some basic rules (my last blog post has comments from Matthew and myself which mention those more clearly than the blog post does) which are enforced usually by setting up View Helpers to mediate between View and Model..."
Est-ce que ça parle à quelqu'un ? Pour l'instant j'utilise mes propres classes pour interfacer les views et le model, est-ce que vous voyez un intérêt particulier à passer par les helpers ?
J'avoue que tout ceci est confus pour moi, je ne vois pas vraiment le cadre d'utlisation des helpers...
Fred
Hors ligne
Voila un exemple d'utilisation : http://www.z-f.fr/forum/viewtopic.php?id=112
Et ta question répond indirectement à ma question
Hors ligne
Salut,
Concernant ta question, il est formellement déconseillé de toucher au model depuis une view pour écrire dans la base. Par contre, pour récupérer les data, c'est bon, voire même pour un système de vues complexes, il semblerait que ce soit la voie (en tout cas c'est celle que j'ai suivie ).
Je ne sais pas si tu as lu ceci :
http://blog.astrumfutura.com/archives/2 … ttern.html
mais les gurus du zf en parlent dans les commentaires ( ya aussi une première partie).
Par contre, dans mon cas, comme je ne veux pas mettre le résultat dans un html (un select dans ton cas) helper, je ne vois pas pourquoi je passerai par un view helper...Qu' en penses-tu ?
Hors ligne
Be dans ton cas c'est pareil, regarde l'exemple qu'il donne avec Zps_View_Helper_Rss il retourne pas de html mais bel et bien un tableau de data.
Hors ligne
Oui, tu as raison.
Le fait est que j'ai déjà implémenté une interface view/model à ma sauce, je me demandais en fait quel avantage j'avais à le faire par un helper. Si il y en a, je réécris mon code sinon je laisse comme ça.
Feignasse attitude en quelque sorte...
En tout cas, tu avais bien senti le coup avec ton selectFormFromBdd.
Dernière modification par fred wolf (26-04-2007 14:00:55)
Hors ligne
Bonjour,
Ma vision du MVC (sujet à débat) est que le controller est là pour :
* valider les données envoyées et faire le traitement associé
* choisir la vue à afficher
La vue s'occupe de tout ce qui est affichage, y compris les traitements liés à l'affichage.
La vue se compose de 2 parties :
- les traitements de vue
- l'affichage lui même
Si un gars veut afficher un message dans un forum, il reçoit l'id du message. Pour moi c'est la vue qui doit récupérer l'objet, traduire l'objet en un tableau associatif et l'envoyer au template (j'utilise smarty).
Donc pour chaque view complexe, j'ai un fichier PHP qui récupère les infos nécessaires à l'affichage et les templates smarty pour l'affichage (par contre effectivement le PHP n'envoie pas les objets directement à smarty, il envoie uniquement les variables nécessaires).
Ces traitements pourraient être mis dans un View_Helper quand c'est des traitements récurrents (envoyer l'identité du gars qui surfe à smarty pour lui afficher "Bonjour Mr Machin").
A+, Philippe
Hors ligne