Bonjour,

Je suis totalement novice car je viens de débuter l'étude de Symfony 2. Je suis actuellement en train d'étudier un très bon tutoriel trouvé sur un autre site.

Dans le bundle réalisé, voici le fichier 'routing.yml' utilisé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
sdzblog:
    pattern:   /{page}
    defaults:  { _controller: SdzBlogBundle:Blog:liste, page: 1 }
    requirements:
        page:  \d+
 
sdzblog_voir:
    pattern:   /{slug}
    defaults:  { _controller: SdzBlogBundle:Blog:voir }
 
sdzblog_ajouter:
    pattern:   /ajouter/article
    defaults:  { _controller: SdzBlogBundle:Blog:ajouter }
 
sdzblog_modifier:
    pattern:   /modifier/{id}
    defaults:  { _controller: SdzBlogBundle:Blog:modifier }
    requirements:
        id:  \d+
 
sdzblog_supprimer:
    pattern:   /supprimer/{id}
    defaults:  { _controller: SdzBlogBundle:Blog:supprimer }
    requirements:
        id:  \d+
Voici le fichier 'BlogController.php' utilisé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?php
 
namespace Sdz\BlogBundle\Controller;
 
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\Httpfoundation\Response;
 
// /!\ Attention, nouvel objet à charger !
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
 
class BlogController extends Controller
{
    public function listeAction($page)
    {
        // On ne sait pas combien de pages il y a, mais on sait qu'une page
        // doit être supérieure ou égale à 1.
        if( $page < 1 )
        {
            // On déclenche une exception NotFoundHttpException, cela va afficher
            // la page d'erreur 404 (on pourra personnaliser cette page plus tard, d'ailleurs).
            throw new NotFoundHttpException('Page inexistante (page = '.$page.')');
        }
 
        // Ici, on récupérera la liste des articles, puis on la passera au template.
 
        // Mais pour l'instant, on ne fait qu'appeler le template.
        // Ce template n'existe pas encore, on va le créer dans le prochain chapitre.
        return $this->render('SdzBlogBundle:Blog:liste.html.twig', array('articles' => array()));
    }
 
    public function voirAction($slug)
    {
        // Ici, on récupérera l'article correspondant au $slug.
        return $this->render('SdzBlogBundle:Blog:voir.html.twig');
    }
 
    public function ajouterAction()
    {
        // Ici, on s'occupera de la création et de la gestion du formulaire (via un service).
 
        return $this->render('SdzBlogBundle:Blog:ajouter.html.twig');
    }
 
    public function modifierAction($id)
    {
        // Ici, on récupérera l'article correspondant à l'$id.
 
        // Ici, on s'occupera de la création et de la gestion du formulaire (via un service).
 
        return $this->render('SdzBlogBundle:Blog:modifier.html.twig');
    }
 
    public function supprimerAction($id)
    {
        // Ici, on récupérera l'article correspondant à l'$id.
 
        // Ici, on gérera la suppression de l'article en question.
 
        return $this->render('SdzBlogBundle:Blog:supprimer.html.twig');
    }
}
Lorsque je tape l'url "http://localhost/Symfony/web/app_dev.php/blog", c'est le template 'voir.html.twig' qui est appelé au lieu de 'liste.html.twig'.

Je ne comprends pas d'où provient mon erreur.

Quelqu'un aurait une idée?

Merci d'avance pour votre aide.