2016-12-15 5 views
0

У меня проблема с отображением контроллера, который возвращает шаблон с формой.Symfony 2.8: Rendering Controller (ошибки формы не отображаются)

Я понял о подзадаче , но мне сложно показать какие-либо ошибки.

Я думаю, что проблема в том, что после того, как он видит форму является недействительным это redirectsToRoute и теряет POST запрос.

Если я не говорю redirectTo, он просто отображает представление.

base.html.twig

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

Utility Controller

/** 
    * @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) }} 

если вы хотите, чтобы erors для определенного поля:

{{ form_errors(form.name) }}