Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SYMFONY] Formularz prosta sprawa - bug czy coś źlę robię ?
ziolo
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 20
Dołączył: 17.01.2009
Skąd: Kraków

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


Mam encje i w niej pole:

  1. /**
  2.   * @ORM\ManyToOne(targetEntity="Category", fetch="EAGER")
  3.   * @ORM\JoinColumn(name="category_id", referencedColumnName="id", nullable=true)
  4.   */
  5. protected $category;


Formularz dla tego pola:

  1. ->add('category', null, array(
  2. 'label' => 'Kategoria'
  3. ))


Pojawiaja się <select> z Kategoriami i pusta opcja, wszystko dobrze działa, ale gdy już ustawimy jakąś Kategorię, To potem nie da się już tej Kategorii usunąć dając na pustą <option>, po przeładowaniu dalej pozostaje kategria wcześniej ustawiona.

Ponieważ w evencie PRE_SUBMIT

  1. $data = $event->getData();
  2. $data['category'] //string '' (length=0)


kategoria jest pustym stringiem wiec dodalem fix.

  1. $builder->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
  2. $data = $event->getData();
  3. if ($data['category'] == '')
  4. $data['category'] = null;
  5. $event->setData($data);
  6. });


Ale to powinno działać dobrze bez tego fixu, jakiejś opcji zapomniałem skonfigurować czy to jest bug w sf2 ?



Mój fix, który wczoraj napisałem okazał się złudzeniem, dalej nie działało. Nie tu był problem.

Okazało się, że usunięcie fetch="EAGER" z kody poniżej pomogło.

  1. /**
  2.   * @ORM\ManyToOne(targetEntity="Category", fetch="EAGER")
  3.   * @ORM\JoinColumn(name="category_id", referencedColumnName="id", nullable=true)
  4.   */
  5. protected $category;


Tylko co ma piernik do wiatraka

Ten post edytował ziolo 28.07.2014, 11:42:49
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 19.08.2025 - 10:55