2017-05-11 7 views
2

Ich brauche Parameter von parameters.yml in Command\ContainerAwareCommand Klasse. Ich sehe $this->getParameter() dort nicht.Wie Parameter von parameters.yml außerhalb des Controllers abrufen?

Gibt es eine einfache Möglichkeit, Parameter von parameters.yml außerhalb des Controllers abzurufen?

Simpler als: Write "freundliche Konfiguration", und setzen Sie Parameter foo in config.yml und dann param in DependencyInjection\Extension::load() abrufen, und setzen Sie ihn: $container->setParameter('foo', $foo) und schließlich in Command\ContainerAwareCommand es $this->getContainer()->getParameter('foo') abrufen?

Antwort

5

Sie können einfach den Zugang zu dem Behälter über:

... extends ContainerAwareCommand 

... 
$this->getContainer()->getParameter('my-params'); 

EDIT:

Sie können Ihre eigenen benutzerdefinierten Parameter importieren Sie dann in den wichtigsten config.yml Dateien als Beispiel definieren:

config.yml

imports: 
    - { resource: parameters.yml } 
    - { resource: security.yml } 
    - { resource: services.yml } 
    - { resource: "@ApplicationBundle/Resources/config/parameters.yml" } 

hoffe diese hilfe

+0

bonusfrage ohne bonuspunkte: Kann ich parameters.yml in 'src/AppBundle/Resources/config /' behalten, wenn AppBundle wiederverwendbar sein soll? Wird diese Datei automatisch importiert? Ursache Ich habe Symfony Ausnahme 'Der Parameter" foo "muss definiert werden. – user6827096

+1

hi @ user6827096 natürlich können Sie die Parameter an beliebiger Stelle definieren, dann importieren Sie. Ich aktualisiere meine Antwort, hoffe diese Hilfe – Matteo

+0

danke .............. – user6827096

Verwandte Themen