2016-06-14 7 views
0

Ich versuche nur einen einfachen Trick zu machen, kann aber keine Lösung finden. Ich sende eine Post-Anfrage von der angular.js-App mit der $ http-Methode. Alles, was ich will, ist es, um Zweig Vorlage weitergeleitet, wo Post-Daten analysiert werden. Ich habe versucht, $this->redirect, $this->render oderSymfony2 rendern Seite und umleiten auf diese Seite

/** 
    * @Route("/print/quote") 
    * 
    * @param Request $request 
    * @return Response 
    */ 
    public function printQuoteAction(Request $request) 
    { 
     return $this->redirect($this->generateUrl('printQuotAction', array(
      'data' => $request->request->all() 
     ))); 
    } 

aber diese Arbeit nicht für mich, was kann ich tun?

Auch ich versuchte

 return $this->render('PTHearingBundle:Print:quote.html.twig', array(
      'data' => $request->request->all() 
     )); 

Und seine macht wirklich eine Seite, aber HTML-Markup als Antwort zurückgibt, aber ich möchte auf diese Seite weitergeleitet werden.

+0

Was meinst du mit: "Ich möchte auf diese Seite gezwungen werden"? –

+0

Um automatisch umgeleitet zu werden –

+1

Ok. Ich weiß nichts über angular.js, aber ich denke, es ist Senden und XHR-Anfrage, so dass es nicht umgeleitet werden kann. Sie sollten den Rückgabewert erhalten und die Umleitung von der angular.js-Seite tun. –

Antwort

0

Statt den Zweig Vorlage der Rückkehr über

$this->render 

oder

$this->redirect 

tun

return JsonResponse('redirectUrl' => $url, 'success' => true); 

und in der Erfolgsfunktion Ihres $http.post/get tun

$location.path(url); 

Grundsätzlich sollten Sie nur den Pfad zum Redirect in Ihrem XHR Anruf zurückgeben und umlenken über Winkel $location Modul.

Verwandte Themen