2017-05-02 1 views
0

J'ai le modèle de brindille nommé homepage.html.twig dans app/Resources/homepage. J'essaie de rendre ce modèle avec le HomeController de cette façon:Pourquoi contrôleur ne rend pas le modèle de brindille

<?php 

    namespace AppBundle\Controller; 

    use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; 
    use Symfony\Bundle\FrameworkBundle\Controller\Controller; 

    class HomeController extends Controller 
    { 
     /** 
     * @Route("/home", name="homepage") 
     * @return \Symfony\Component\HttpFoundation\Response 
     */ 
     public function homeAction() 
     { 
      return $this->render('homepage/homepage.html.twig'); 
     } 
    } 

Voici le modèle de brindille:

{% extends 'base.html.twig' %} 

{% block body %} 
    <div class="container"> 
     <div class="jumbotron"> 
      <h1>Navbar example</h1> 
      <p>This example is a quick exercise to illustrate how the default, static navbar and fixed to top navbar work. It includes the responsive CSS and HTML, so it also adapts to your viewport and device.</p> 
      <p> 
       <a class="btn btn-lg btn-primary" href=# role="button">View navbar docs &raquo;</a> 
      </p> 
     </div> 
    </div> 
{% endblock %} 

Pourquoi le rendu de ce modèle ne fonctionne pas?

+1

Tous les modèles de Symfony doivent se trouver dans app/Ressources/vues que vous devez mettre votre modèle dans app/Ressources/views/homepage pour que vous puissiez le restituer avec succès – paris93

+0

@ paris93; Nous pouvons également mettre des vues sur notre dossier bundle: "src/YourBundle/Resources/views". –

+0

oui c'est vrai, mais @Rumen a mis le template directement dans le fichier Ressources, ce qui ne marchera pas – paris93

Répondre

1

je résolu le problème en mettant

{% block body %} 
{% endblock %} 

dans le base.html.twig