2011-08-07 7 views
3

기사 및 정적 페이지 또는 연락처 페이지를 처리하기위한 번들이 포함 된 symfony2 사이트에서 내 첫 사이트를 프로그래밍하고 있습니다. 또한 사이트에 게재 할 광고를 처리하기위한 번들 (현재는 백엔드)을 만들었지 만이 광고는 프론트 엔드 페이지 요청에 표시되어야하므로 필요한 코드를 실행하여 광고를 수집하는 방법을 알아야합니다. 광산 번들에있는 모든 프론트 엔드 컨트롤러에서이 정보를 보여주고 전달할 수 있습니다.Symfony2 영원한 페이지 요청에 사용되는 코드 구성

도와 주시겠습니까? 사전 로버트

답변

1

에서

덕분에 광고를 계속 않는 곳에 따라 다르지만 service container위한 작업 같은 소리.

은 기본적으로 당신은 방법이 필요한 광고를 가져 오기 위해 구현하는 서비스를 작성하고 다음 나뭇 가지 템플릿 내에서 컨트롤러 ($this->get('service_name'))

+0

답장을 보내 주셔서 감사합니다. 광고는 단지 예일뿐입니다. 광고, 다단계 메뉴, Google analitycs와 같은 추적 기능이 있습니다. 서비스를 사용하는 경우, 컨트롤러에서 적절한 서비스를 받아 사용해야하고 나중에이 논리에서 무언가를 변경하려면 컨트롤러에서 상대 코드를 변경해야하며 이는 마른 규칙을 위반합니다. 나는 페이지 광고, 메뉴 및 기타를 설정하고 페이지의 내용 만 설정하는 올바른 컨트롤러를 따라 한 곳만 있으면됩니다. – Robert

+0

필자는 자신을 더 잘 설명하려고 노력합니다. 동일한 방식으로 모든 프론트 엔드 페이지에 공통된 base.html.twig가 있습니다. 모든 프론트 엔드 페이지에 공통적 인 기본 컨트롤러가 필요합니다. – Robert

+0

잠깐, 서비스중인 로직을 변경하면 모든 컨트롤러에서 코드를 변경해야하는 이유는 무엇입니까? 모든 가져 오기/메뉴 생성/분석 가져 오기/모든 작업을 수행하는 단일 서비스가 있고 컨트롤러에서 수행하는 작업은 모두 호출하는 것입니다. 따라서 로직의 일부분을 변경해야한다면 단일 서비스에 들어갑니다. – Inoryy

관련 문제