小编use*_*287的帖子

Symfony2 - 如何使用从控制器外部访问服务

在我的Symfony2控制器中,这很好用:

$uploadManager = $this->get('upload.upload_manager');
Run Code Online (Sandbox Code Playgroud)

但当我将它移动到自定义监听器时:

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();
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

Fatal error: Call to undefined method Acme\MainBundle\Listener\PersonChange::get() in /home/frank/...
Run Code Online (Sandbox Code Playgroud)

我知道我必须使用一个使用声明,但不知道该使用什么.

symfony

15
推荐指数
3
解决办法
2万
查看次数

标签 统计

symfony ×1