En mi controlador de Symfony2, esto funciona bien:Symfony2-Cómo utilizar el acceso a un servicio desde el exterior de un controlador
$uploadManager = $this->get('upload.upload_manager');
pero cuando lo muevo a un escucha personalizado:
use Doctrine\ORM\Event\LifecycleEventArgs;
use Acme\UploadBundle\Upload\UploadManager;
class PersonChange
{
public function postRemove(LifecycleEventArgs $args)
{
$entity = $args->getEntity();
$entityManager = $args->getEntityManager();
$uploadManager = $this->get('ep_upload.upload_manager');
echo "the upload dir is " . $uploadManager->getUploadDir();
}
}
consigo un error:
Fatal error: Call to undefined method Acme\MainBundle\Listener\PersonChange::get() in /home/frank/...
sé que debe necesitar una declaración uso pero don No sé qué usar.
Esto debería proporcionar una posible solución: [¿Cómo obtengo dependencias de servicios en una clase personalizada] (http://stackoverflow.com/questions/8622382/how-do-i-get-services-dependencies-in-a-custom-class) – kufi