2012-12-15 2 views
0

컴파일 패스 (CompilerPassInterface을 구현하는 클래스)를 작성했으며이를 내 컨트롤러 중 하나에서 DI 컨테이너에 등록하고 싶습니다. 내가하려고하는 일은 특정 서비스 X가 특정 방식으로 태그 지정된 다른 서비스 (Y, Z, ...)를 수집하는 것입니다.symfony 2 컨트롤러에 컴파일러 패스 등록

$container = new ContainerBuilder(); 
$container->addCompilerPass(new TransportCompilerPass); 

을하지만 내 경우에는 내가 내 응용 프로그램에 추가 services.xml 파일의 정의를 활용할 수 있도록 컨트롤러에 사용할 컨테이너를 사용하려면 : 컨트롤러 외부 단순히 할 것이다. 컨트롤러의 $ this-> 컨테이너에 get 메서드가 있지만 addCompilerPass 메서드가 없다는 것을 알게되었습니다. 분명히 그것은 $this->containerContainerBuilder이 아니기 때문입니다.

아무튼 ... 아무도 내 주위에 방법을 보여줄 수 있습니까?

답변