Modèle Partiels dans Symfony 2
Sont là des choses telles que les partiels dans Symfony 2, des modèles réutilisables à partir de n'importe où, de manière efficace?
J'ai trouvé include
http://twig.sensiolabs.org/doc/tags/include.html mais cela ne permet le rendu d'un modèle dans une structure de répertoires spécifiques.
Ce que je veux vraiment un dossier qui contient toutes mes partielle des modèles, plutôt que de regrouper dans mes principaux points de vue?
Donc, je veux être en mesure de faire quelque chose comme
{% include "Bundle:Default:Partials:view.html.twig" %}
Mise à jour
Je ne veux pas l'utilisation forcée de la structure de Bundle:Controller:Template
structure. Je ne veux pas utiliser ce que cela signifie mettre tous mes modèles partiels avec mes principaux modèles d'affichage. J'ai besoin de quelque chose qui me permet de faire Bundle:Controller:PartialDir:Template
OriginalL'auteur Jake N | 2012-12-30
Vous devez vous connecter pour publier un commentaire.
Vous pouvez déjà le faire. Symfony2 docs a une section décrivant comment le faire.
http://symfony.com/doc/current/book/templating.html#including-other-templates
default('index') ~ '_foo.html'
partie): twig.sensiolabs.org/doc/recipes.html#making-an-include-dynamicce n'est pas ce que je recherche. Votre solution applique le Bundle:Contrôleur:Modèle de la structure. Je ne veux pas utiliser ce que cela signifie mettre tous mes modèles partiels avec mes principaux modèles d'affichage. J'ai besoin de quelque chose qui me permet de faire Bundle:Contrôleur:PartialDir:Modèle
Avez-vous essayé Bundle:Contrôleur:Somedir/anotherdir/modèle.html.brindille?
J'ai essayé et il des erreurs? Devrait-il travailler?
Vous pouvez essayer de débogage Symfony\Bundle\TwigBundle\Loader\ FilesystemLoader de voir pourquoi il n'est pas à la trouver. Je sais que cette autre format Bundle:Contrôleur/Somedir:modèle.html.twig fonctionne si vous pouviez lui donner un essai. C'est juste que le Contrôleur/Somedir format a un autre sémantique parce que cela fait référence à des modèles pour les contrôleurs dans le Bundle\Controller\Somedir espace de noms.
OriginalL'auteur dteoh
Dans Symfony 2.4 (la version que j'utilise actuellement, mais il fonctionne probablement dans 2 autres.versions x) vous pouvez effectuer les opérations suivantes:
ou dans Symfony 2.2+ à l'aide de la fonction include
Ce sera pour le partiel.html.template twig à l'intérieur de l'app/Resources/views/_partials répertoire. Vous pouvez bien évidemment le nom de la _partials répertoire de tout ce que vous voulez. Il fonctionne aussi sans le '::' préfixe.
OriginalL'auteur rogden
Je sais que c'est vieux, mais le moyen de parvenir à ce que l'OP pose est la suivante:
Plutôt que de faire de l'
bundle:controler:partialDir:template
nous devons passer légèrement à atteindre:
{% include 'Bundle:PartialDir/Controller:Template' %}
OriginalL'auteur StrayObject
À inclure le contrôleur, vous devrez vous référer à l'aide de la norme de chaîne de syntaxe pour les contrôleurs (c'est à dire bundle:contrôleur:action):
OriginalL'auteur watlf