Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SF2][Symfony2][Symfony]form validation contrains
Forum PHP.pl > Forum > PHP > Frameworki
symer
Witam. Jak za pomocą formularza wysłać błędy do szablonu. Próbowałem już chyba wszystkiego . Mam symfony 3.3.
akcja kontrolera:
  1. public function assetAction()
  2. {
  3.  
  4. $em = $this->getDoctrine()->getEntityManager();
  5. $task = new asset();
  6. $form = $this->createFormBuilder($task)
  7. ->add('model', TextType::class, array(
  8. "error_bubbling" => true,
  9. 'required' => false,
  10. 'constraints' => array(new NotBlank(), new Length(array('min' => 30)))
  11. ))
  12. ->add('save', SubmitType::class, array('label' => 'Create Task'))
  13. ->getForm();
  14.  
  15. return array(
  16. 'form' => $form->createView());
  17.  
  18. }


plik Twig:

  1. {{ form_start(form, {'attr' : {'style' : 'color:black' } } ) }}
  2. {{ form_errors(form.model) }}
  3. {{ form_widget(form.model, {'attr' : {'class' : 'form-inline','autocomplete':'off' } }) }}
  4. {{ form_row(form.save, { 'label': 'Szukaj' }) }}
  5. {% endblock %}


Plik konfiguracyjny:
validation: { enable_annotations: true }

Plik entity asset:
  1. namespace AppBundle\Entity;
  2. use Symfony\Component\Validator\Constraints as Assert;
  3. class Asset
  4. {
  5. protected $model;
  6.  
  7. public function getModel()
  8. {
  9. return $this->model;
  10. }
  11.  
  12. public function setModel($model)
  13. {
  14. $this->model= $model;
  15. }
  16.  
  17. }


Co jest źle?? Ponieważ nie mogę wygenerować błędów w formularzu
LowiczakPL
zapomniałeś o

  1. $form->handleRequest($request);


i

Należy pamiętać, że metoda createView() powinna być wywoływana przed tym, jak wywołana jest handleRequest. W przeciwnym razie, zmiany dokonane w zdarzeniach *_SUBMIT nie beda zastosowane do widoku (takie jak błędy walidacyjne).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.