Vous devez promettre de ne pas rire, mais ma situation est la suivante:Lancement d'une vue personnalisée à partir d'un modèle personnalisé. Zend_possible?
Au lieu d'utiliser les partiels et aides et autres outils similaires que nous utilisons déjà, nous voulons utiliser une vue personnalisée en dehors de tous les cadres et les frontières de la réelle application. Fondamentalement, nous avons besoin à ce stade de charger du HTML propre dans une variable sur une certaine réaction d'un modèle. C'est l'affaire des singes et peut être fait par pratiquement n'importe qui sans utiliser un clavier. Le problème est que les pages HTML que nous voulons créer sont supposées être assez étendues et sont un trainwreck à debug/maintain/expand en raison de l'inate "return $ arrlglllgll;" approche. Pour faire un script lisse et humain, nous aimerions beaucoup utiliser le style .phtml avec html propre mélangé avec des injections php sans réellement le rendant.
Est-ce possible et comment?
Je me bats actuellement avec
$mailView = new Zend_View();
$mailView->setScriptPath('/Templates');
echo($mailView->render('test.php'));
die;
Où test.php est un fichier que j'ai essayé d'atteindre avec tous les moyens et corelations imaginables, mais a finalement échoué à chaque fois en raison de
exception 'Zend_View_Exception' with message 'script 'test.php' not found in path (\library\Extras\Controller\Action\Helpers\)' in \library\Zend\View\Abstract.php:875
Stack trace: blablabla
Le chargement d'une vue personnalisée à partir d'un contrôleur est simple, il suffit de fournir le chemin relatif et le réglage, mais il semble que je ne trouve rien si je tire depuis une bibliothèque. Aucun conseil?
est '/ templates' votre réelle, chemin absolu? Essayez de vider le contenu de '$ view-> getScriptPaths()' avant le rendu, et ajoutez cette sortie à votre question. – jason
Array ( [0] => \ Templates \ ) Fondamentalement, c'est exactement ce que je l'ai défini, plus un slash. Et je n'ai aucun problème à appeler la vue depuis le contrôleur avec '../applications/views/scripts/controller/test.php'. – John