2016-06-27 4 views
0
$this->getServiceContainer()->get('router')->getGenerator()->generate('ting_user_reset_password', array(), UrlGeneratorInterface::ABSOLUTE_URL); 

Wenn ich versuche, eine URL mit dem router Dienst zu erzeugen, mit dem Routennamen ting_user_reset_password eine Ausnahme tritt auf, weil mit JMSI18nRoutingBundle existiert die Route Name tut.ich URL mit Router-Dienst generieren kann nicht, wenn JMSI18nRoutingBundle in Gebrauch ist - Symfony 2.7

/** 
* @Route("/reset-password", name="ting_user_reset_password") 
* @Template() 
*/ 
public function resetPasswordAction(){ 

} 

JMSI18nRoutingBundle erstellen Sie die folgenden Routen:

us_US_RG_ting_user_reset_password 
de_DE_RG_ting_user_reset_password 
es_ES_RG_ting_user_reset_password 
... 

Wenn Sie JMSI18nRoutingBundle für diese Route zu deaktivieren, funktioniert der Router Service fein:

/** 
* @Route("/reset-password", name="ting_user_reset_password", options={"i18n" = false}) 
* @Template() 
*/ 
public function resetPasswordAction(){ 

} 

Wie kann ich die URL erhalten den Router-Dienst verwenden, indem Sie den Namen der Route angeben?

Vielen Dank.

Antwort

0

Ich habe viele Tests und die richtige Art und Weise gemacht Urls zu erzeugen, wenn das Bündel „JMSI18nRoutingBundle“ verwendet wird, ist wie folgt:

$this->getServiceContainer()->get('router')->generate('ting_user_reset_password', array(), UrlGeneratorInterface::ABSOLUTE_URL); 

ohne getGenerator()->

das ist Arbeit für mich in Ordnung.

Verwandte Themen