Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SF][SF2][Symfony2]Formularze- warość domyślna.
Forum PHP.pl > Forum > PHP > Frameworki
daniel1302
Witam, mam problem z formularzami w symfony 2.7.

Posiadam takie pole w formularzu(pole typu radio):

  1. ->add('sicknesCost', 'choice', array(
  2. 'label' => 'Składka chorobowa',
  3. 'expanded' => true,
  4. 'multiple' => false,
  5. 'choice_list' => new ChoiceList(
  6. $config['work']['stawkaChorobowePracownik'],
  7. $config['work']['stawkaChorobowePracownik_']
  8. ),
  9. 'data' => $config['work']['stawkaChorobowePracownik'][1],
  10. 'constraints' => array(
  11. new NotBlank(array('message' => 'Musisz zaznaczyć jedną opcję')),
  12. new Choice(array(
  13. 'choices' => $config['work']['stawkaChorobowePracownik'],
  14. 'message' => 'Wybierz dostępną opcję'
  15. ))
  16. )
  17. ));


I jeśli zastąpie choice_list na
  1. 'choices' => array(
  2. 0 => 'Nie', 1 => 'Tak'
  3. ),


i i ustawie 'data' => 1 to wartośc domyślna jest na tak,

W pierwszym przypadku nie ma zaznaczonej żadnej opcji. Jaka może być tego przyczyna?
Crozin
Chyba wypadałoby pokazać co dokładnie kryje się pod $config.
daniel1302
Ah no tak przepraszam.

ten fragment który pobieram w wyżej wymienionym przypadku:
  1. 'stawkaChorobowePracownik' => array(0, 0.0245),
  2. 'stawkaChorobowePracownik_' => array('Nie', 'Tak'),
thek
No to chyba w tym wypadku masz jako klucze: 0 i 0.0245 a zatem wywołana 1 nie zostanie znaleziona... Mam rację? wink.gif
daniel1302
Tak ale 1 daje w drugim przypadku jesli do pola formularza przypisze opcje
  1. 'choices' => array('Nie', 'Tak')
i wtedy jesli ustawię opcję
  1. 'data' => 1
to wszystko działa bo zaznaczona jest opcja "Tak"

Ale teraz mam problem bo jeśli tworze opcje
  1. 'choice_list' => 'choice_list' => new ChoiceList(
  2. $config['work']['stawkaChorobowePracownik'],
  3. $config['work']['stawkaChorobowePracownik_']
  4. ),

i ustawię sobie klucz na 0.0245 bo pobiorę go z tablicy z configu
  1. 'data' => $config['work']['stawkaChorobowePracownik'][1],


to nie działa...
a wartość zwracana przez $config['work']['stawkaChorobowePracownik'][1] to jest (float)0.0245 bo sprawdzałem.
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.