Il n'y a pas de colonie () pour les composants! Je sais mais peut-être qu'il y a une autre façon de le faire? P>
(la question semble être à propos d'un cadre PHP: http://www.symfony-project.org / ) p>
4 Réponses :
Composants Ne manipulez pas les modèles, vous ne pouvez utiliser que partiels. Si vous devez retourner une partielle spécifique de l'intérieur de votre classe de composants, vous pouvez faire quelque chose comme ceci:
return get_partial('module/action', array('paramName' => $paramValue));
Il n'y a pas de méthode Setemplate sur SFComponents. Vous avez essentiellement 3 options: p>
_bar.php code>, appelez simplement include_partiale ('Bar', $ vars) code> à l'intérieur de _foo.php code>. li>
- Chargez la partialHelper et rendez la partielle manuellement à l'intérieur de la méthode de l'exécution des composants et que le rappel du composant SFVIEW :: NONE. LI>
ol>
Mais méfiez-vous SFVIEW :: Aucun sur un composant ne cachera pas le composant, au moins dans 1.0 - il vaut vraiment la peine de vérifier que le fichier de cache est toujours généré.
Êtes-vous sûr que le composant ne sera toujours pas mis en cache même si le texte est rendu à l'intérieur de celui-ci? Si cela est vrai, alors oui, n'utilisez pas la méthode 3 si vous voulez un composant en cache-capable (je n'ai jamais utilisé la méthode 3, moi-même.)
Avec Symfony 1.4, vous devez utiliser include_partiale ('bar', $ var) code> au lieu de
include_partiale ('bar', $ args) code>.
Pour contourner cela, je fais:
echo get_component('module', 'action', $this->getVarHolder()->getAll()); return sfView::NONE;
Cela m'a sauvé un tas de fichiers de modèles vides.
Je me luttais avec retour get_partial ('module / partiel'); code> mais cela ne contournerait pas le modèle ordinaire de la composante. Maintenant, grâce à cette réponse, cela fonctionne comme ceci pour moi:
ECHO GET_PARTIAL ('Module / Partial'); Retour SFVIEW :: NONE; CODE>
Ceci a fonctionné pour moi: évidemment, le modèle doit être dans le même module. p> p>