2016-12-15 4 views
0

formViewでテンプレートを返すコントローラをレンダリングしようとすると問題が発生しました。symfony 2.8:レンダリングコントローラ(フォームエラーが表示されない)

サブリクエストを理解しましたが、何らかのエラーを表示するのが困難です。

私はこの問題は、それが見た後、フォームが無効それredirectsToRouteであり、それはPOSTリクエストを失っていることだと思います。

私はredirectToと言うわけではありません。

base.html.twig

{{ render(controller('AppBundle:Utility:renderSignUpWizard'), {request: app.request}) }} 

ユーティリティコントローラ

/** 
    * @Route("/registration/wizard/", name="registration.wizard") 
    */ 
    public function renderSignUpWizardAction(Request $request) 
    { 
     /** @var $user User */ 
     $user = $this->getUser(); 

     $form = $this->createForm(SignUpWizardType::class, $user); 

     $form->handleRequest($request); 

     if ($form->isSubmitted() && $form->isValid()) 
     { 
      // save changes to user 
      $this->persistAndSave($user); 

      // redirect to profile 
      return $this->redirectToRoute('profile'); 
     } 
     else if($form->isSubmitted() && !$form->isValid()) 
     { 
      return $this->redirectToRoute('home'); 
     } 

     return $this->render('partials/signup-wizard.html.twig', array 
     (
      'form' => $form->createView(), 
     )); 
    } 

答えて

1

あなたは、私は明確な答えを与えている可能性がフォームを置く小枝ファイルを表示することができれば。フォームを生成する

簡単な方法(エラーが含まれていません):あなたがレンダリングし、以下を追加するには、コントローラを教えて小枝ファイルチェック

{{ form_start(form) }} 
{{ form_widget(form) } 
{{ form_end(form) }} 

を追加:

{{ form_errors(form) }} 

場合特定のフィールドのエラーが欲しい:

{{ form_errors(form.name) }} 
関連する問題