2013-03-21 3 views
3

Twig 변수를 내 app/config/config.yml에 설정할 수 있다는 것을 알고 있습니다. 그러나 번들 수준 (예 : Bundle/Resources/config/??.yml)에 변수를 설정하려고합니다.symfony2 번들 특정 twig 구성/변수

예를 들어, 내 페이지의 바닥 글에 번들 버전 식별자를 포함하고 싶습니다. twog config을 내 번들 'services.yml에 넣으려고했는데 Symfony가 구성을 파싱하지 못했습니다.

내가 어떻게 이것을 달성 할 수 있습니까?

답변

1

예제에 번들 특정 구성을 어떻게 구현할 수 있을지 모르겠습니다. 묶음의 설정은 번들 특정이 아닌 환경 고유의 기본 설정 파일로 가져 오는 경향이 있습니다.

그러나 예를 들어, 사용중인 번들의 이름을 반환하는 나뭇 가지 확장을 만들 것입니다. 그렇게하면 템플릿에서 원하는 곳 어디에서나 사용할 수 있습니다. 요청에서 컨트롤러의 완전히 명명 된 경로를 가져온 다음 preg matching을 사용하여 번들 이름을 가져올 수 있습니다. 아래처럼 뭔가 작업을해야합니다 :이 예 $this->container에서

public function getBundleName() 
{ 
    $pattern = "#([a-zA-Z]*)Bundle#"; 
    $matches = array(); 
    preg_match($pattern, $this->container->get('request')->get('_controller'), $matches); 
    return $matches[1]; 
} 

컨테이너의 인스턴스 생성자에 설정되어 있습니다. 다른 방법을 사용하여 컨트롤러를 얻는 경우 그에 따라 대체하십시오.