Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony][SF2][Symfony2]Dodanie walidacji do formularza nie używającego encji
Crash89
post
Post #1





Grupa: Zarejestrowani
Postów: 191
Pomógł: 7
Dołączył: 3.04.2013

Ostrzeżenie: (0%)
-----


Chcę tutaj porównać jedną daną pobraną w przesyłanym formularzu z drugą.
Wyczytałem gdzieś że do rozwiązania tego problemu, przy tworzeniu formularza FormType należy wykorzystać obiekt Callback, konstrukcja wygląda mniej więcej tak:
  1. use Symfony\Component\Validator\ExecutionContextInterface;
  2. use Symfony\Component\Validator\Constraints\Callback;
  3.  
  4.  
  5. public function buildForm(FormBuilderInterface $builder, array $options)
  6. {
  7. $builder->add('pole','type',array(
  8. 'mapped' => false,
  9. 'constraints' => array(
  10. new Callback(array($this,'validate')
  11. ))));
  12. // i treść funkcji validate
  13.  
  14. public function validate(ExecutionContextInterface $context){
  15. if($data['pole1'] >= $data->['pole2']){
  16. $context->addViolation("Tekst błędu");
  17. }
  18. }
  19.  


Problem w tym że nie wiem gdzie mam umieścić funckję validate.
Umieszczałem ją w FormType i nie działa, także próbowałem w kontrolerze, ale tam też jakoś na to nie reaguje.
Przy formularzu wykorzystującym entity, umieszczam ją w entity i wszystko działa, ale tutaj nie mam takiej klasy.



Więc, gdzie umieścić tą funkcję? (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.09.2025 - 09:10