Tomasz Wójtowicz

Tomasz Wójtowicz Programista Ruby on
Rails

Temat: sfWidgetFormDoctrineChoice

Witam,

Chciałbym stworzyć dynamiczny sfWidgetFormDoctrineChoice którego zawartość jest zależna od tego jaka jest wartosc metody GET bądź POST.

Robiłem w konfiguracji formularza


$query = odpowiednie zapytanie;

$this->setWidget('type', new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('Type'), 'query' => $query)));


Tylko w jaki sposob wlasnie przekazac wartosc metody GET bądź POST do zapytania?

Druga sprawa to tworząc zapytanie gdzie na sztywno wpisalem odpowiednie wartosciu warunku to widget wyswietlal numer id a nie name. Jak to rozwiazac?:>

Jak narazie zrobilem tak ze w akcji tworze zapytanie, wynik przerabiamna arraya i tworze widget


$types1 = zapytanie (razem z uwzglednionym postem badz getem)

// wpisanie do tablicy nazwy typów

$Atypes1_name = array();
foreach ($types1 as $type) {
$Atypes1_name[$type->id] = $type->name;
$Atypes1_id[] = $type->id;
}
$this->types1_count = count($Atypes1_name);

// Jeżeli liczba typów jest wieksza od zera twórz widget i walidator
if($this->types1_count > 0){

$this->form->setWidget('type1', new sfWidgetFormSelectRadio(array('choices' => $Atypes1_name, 'default' => $Atypes1_id[0])));
....
}


No i teraz chodzi o to że niby dziala ale nie za bardzo mi sie to rozwiązanie podoba. Pewnie rozwiązanie ejst bardzo proste tylko jeszcze o tym nie wiem :) OBY :P

PozdrawiamTomasz Wójtowicz edytował(a) ten post dnia 20.12.10 o godzinie 19:30