2009-07-29 6 views
0

Fondamentalement, je veux rendre une vue et une disposition d'un modèle. Ne me demande pas pourquoi. Tout d'abord, les vues fonctionnent comme prévu et je les charge dans une variable pour mon utilisation perverse plus tard. Je suis également pleinement conscient que je pourrais toujours faire des scripts partiels. Cela semble être un moyen de repli valable, mais cela ne suffit pas.Comment utiliser Zend Layout avec Zend View si j'appelle la vue d'un modèle?

Ce que je veux faire, c'est que la mise en page fonctionne automatiquement, comme dans le cas des contrôleurs et des vues.

En ce moment, j'emploie quelque chose comme ceci:

// Class blablabla 
$layout = new Zend_Layout(); 
$layout->enableLayout(); 
$layout->setView($view); 

// Ugly url, I know, I'm experimenting and they work 
$body = $layout->render('mailer/layout/mail'); 
$body .= $view->render('mailer/templates/' . $type . '.phtml'); 

Le problème est que le corps $ contient la mise en page et seulement puis la vue réelle. Aucun conseil? Qu'est-ce que je fais mal?

Répondre

0

Je pense que ma première note devrait être que vous essayez d'utiliser un marteau comme un tournevis. Comme je suis sûr que vous le savez, dans le modèle MVC, la vue est le rendu, et est logiquement distincte (séparée) du modèle. Je ne suis pas sûr que vous allez trouver une solution heureuse à cela, puisque vous traversez les cours d'eau.

+0

Je sais bien comment fonctionne MVC. Cette fonction permet de générer un flux phtml (lisible par l'homme/facilement modifiable) à utiliser comme corps d'e-mail, stocké dans la base de données à envoyer par un processus simple qui contrôle le flux d'e-mails. Oui, n'importe qui peut utiliser des aides, mais 500 $ html. = 'Blablabla'; rows est une approche horrible. Je peux déjà, comme je l'ai dit, utiliser avec succès des vues pour répondre à mes besoins les plus sombres. Ce que j'apprécierais, c'est que la disposition fonctionne de manière satisfaisante. Voyez cela comme un MVC latent pour être parallèle à celui standard. – John

+0

Ce que j'essaie de dire, c'est que même si le tournevis cruciforme est supérieur, j'ai besoin d'un tournevis droit maintenant. – John

+0

Gotcha, et merci d'être cordial quand je vérifiais l'évidence. Bonne chance avec ça, je ne suis définitivement pas un gourou de ZF, et cette question en demande une. – markh