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 :
[code]# twig extension
services:
my.twig.extension:
class: GG\UserBundle\Twig\UserExtension
arguments:
em: "@doctrine.orm.entity_manager"
tags:
Voici mon Extension :
[code]<?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';
}
}
?>[/code]
Voici mon erreur :
[code]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[/code]
J'ai déjà vidé le cache de manière manuelle et en invite de commande.
Merci de votre aide :)