Frage

Ich habe einige Dienste, die in meinem Symfony2 -Projekt mit einem bestimmten Tag getroffen werden, das ich gerne in einem Controller verwenden würde.

Infolgedessen versuche ich herauszufinden, wie man sie am besten an den Controller übergeben kann, und dachte, dass es vielleicht eine Möglichkeit gibt, dies mit dem Gesamtkonfigurationssystem von Symfony2 zu tun.

#  Inside routing.yml:
my_controller:
  pattern: "/path"
  defaults {
      _controller: Bundle:Controller:action
      # The following line is kind of what I'm looking for.
      myParam: @my.tag
  }

# Inside a services.yml file:
my.service:
  class: Bundle\MyService
  tags:
      - { name: my.tag }
my.otherService:
  class: Bundle\MyOtherService
  tags:
      - { name: my.tag }

Angesichts der beiden obigen Beispiele für Konfigurationsdatei würde ich es mir gerne machen, dass meine Instanz von "Bundle: Controller: Action" ein Array mit "Bundle MyService" und "Bündel myTherservice" erhält.

Vielen Dank!

War es hilfreich?

Lösung

Diese Diskussion in Google -Gruppen hat zu einer Lösung geführt. Ein Teil der API hat sich jedoch geändert. Nämlich:

  • Die von Ihnen überschreibende Bundle -Methode ist Build (), nicht RegisterExtensionen ().
  • Die Erweiterungsmethode, die Sie überladen, ist load () nicht configLoad ().

Solange Sie die beiden Codeblöcke entsprechend bewegen und korrekt implementieren, sollten Sie in der Lage sein, etwas in den gewünschten Funktionen zu erhalten.

Leider ist dies in keiner Weise vom DIC automatisiert, aber es ist wichtig zu beachten, dass ich die Anforderung habe, alles von einem bestimmten Tag zu bekommen. Nicht nur aus meinem Bündel, sondern von jedem Bundle letztendlich Teil der App.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top