Symfony2 Inclure EntityManager Extension Twig

Fermé
cbtraize - 11 oct. 2013 à 13:02
alexdrums Messages postés 241 Date d'inscription dimanche 2 octobre 2011 Statut Membre Dernière intervention 2 avril 2014 - 12 oct. 2013 à 20:37
Bonjour,



J'ai créer une extension Twig sauf que j'ai un soucis pour récupérer l'entity manager.



Voici la déclaration de mon service :



# twig extension
services:
my.twig.extension:
class: GG\UserBundle\Twig\UserExtension
arguments:
em: "@doctrine.orm.entity_manager"
tags:
- { name: twig.extension }


Voici mon Extension :



<?php
// src/GG/UserBundle/Twig/UserExtension.php
namespace GG\UserBundle\Twig;


class UserExtension extends \Twig_Extension
{
private $em;
private $conn;

public function __construct(\Doctrine\ORM\EntityManager $em) {
$this->em = $em;
$this->conn = $em->getConnection();
}
public function getFunctions()
{
return array(
'geekInscrits' => new \Twig_Function_Method($this, 'nbGeekInscrits'),
);
}
public function nbGeekInscrits()
{
$sql = 'COUNT(*) FROM GG_User';
return $this->conn->fetchAll($sql);
}

public function getName()
{
return 'gguser_extension';
}
}

?>


Voici mon erreur :

ContextErrorException: Catchable Fatal Error: Argument 1 passed to GG\UserBundle\Twig\UserExtension::__construct() must be an instance of GG\UserBundle\Twig\EntityManager, instance of Doctrine\ORM\EntityManager given, called in /var/www/clients/client1/web1/web/symfony/app/cache/dev/appDevDebugProjectContainer.php on line 1911 and defined in /var/www/clients/client1/web1/web/symfony/src/GG/UserBundle/Twig/UserExtension.php line 11


J'ai déjà vidé le cache de manière manuelle et en invite de commande.

Merci de votre aide :)
A voir également:

1 réponse

alexdrums Messages postés 241 Date d'inscription dimanche 2 octobre 2011 Statut Membre Dernière intervention 2 avril 2014 10
12 oct. 2013 à 20:37
UP
0