Gibt es eine Chance Controller auf ihre Leistungen abhängig machen nicht in ihnen der Service-Container über Verwendung, sondern durch reine Konstruktor Dependency Injection?Symfony 2: Dependency Injection (DI) von Controllern
würde Ich mag Controller auf diese Weise schreiben:
<?php
class ArticleController extends \Symfony\Bundle\FrameworkBundle\Controller\Controller
{
private $articleFacade;
private $articleRepository;
public function __construct(ArticleFacade $articleFacade, ArticleRepository $articleRepository)
{
$this->articleFacade = $articleFacade;
$this->articleRepository = $articleRepository;
}
public function indexAction()
{
...
}
}
Unfortunatelly als ich Symfony ControllerResolver neue Instanzen Controller funktioniert nicht sehen können, über Servicecontainer, sondern über einfache return new $controller
Anruf.
Vielen Dank für Ihre Antwort. –
Werfen Sie einen Blick auf meine [AbstractControllerBundle] (https://github.com/elnur/ElnurAbstractControllerBundle). Es soll Ihnen einen [Parent Service] (http://symfony.com/doc/current/cookbook/service_container/parentservices.html) zur Verfügung stellen, um die Verwendung von Controllern als Dienste zu vereinfachen. –
Es sieht nicht mir wie FOSUser dies tut? Verpasse ich den Punkt? Václavs Frage war, sie über die Konstruktormethode zu injizieren, während FOSUser $ this-> container-> get ('service'); https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Controller/RegistrationController.php – Steve