Hvordan implementere en baseclass for Symfony2 kontrollere

stemmer
6

Det er noen artikler rundt som berører dette temaet, men ingen av dem så ut til å være en praktisk brukbar løsning for meg. Mitt mål er å sette noen grunnleggende metoder (de jeg trenger i hvert kontrolleren uansett) inn i en basecontroller, f.eks

   $this->getEntityManager();
   $this->getRequest();
   $this->getRepository($entityName);

Hvordan kan dette gjøres?

AFAIK må vi injisere tjenestene i basecontroller, men hvordan kan jeg fortelle klasser for å bruke en tjeneste for sine super? Det er noen anstendig artikkel om kontrollere og Dependency Injection [1], men til slutt fikk jeg fast med at tilnærmingen også, se min kommentar her: [2]

[1] http://miller.limethinking.co.uk/2011/04/15/symfony2-controller-as-service/

[2] http://miller.limethinking.co.uk/2011/04/15/symfony2-controller-as-service/#comment-579

Publisert på 27/04/2011 klokken 08:05
kilden bruker
På andre språk...                            


1 svar

stemmer
3

pseudo

MyBaseController impliments Symfony\Component\Di\ContainerAwareInterface
  setContainer($container)
    $this->container = $container

  getEntityManager
    return $this->container->get('doctrine.orm.entity_manager')
Svarte 27/04/2011 kl. 08:27
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more