konto usunięte

Temat: Mały trick z paramaterHolderem

Dzisiaj znalazłem mały trick z holderem.
Mamy w request tablicę product w której jest indeks category_id.
Jak się dobrać do wartości najprościej ?

Kontroler:
$this->getRequest()->getParameter('product[category_id]')

Kurde 2 lata robię w symfony a tego nie znałem...
W utilsach w katalogu symfony są takie statyczne klasy które są kopalnią takich trików.

konto usunięte

Temat: Mały trick z paramaterHolderem

hmm ... nie widziałeś ... no co ty? ;)

możesz też:
$product_params = $request->getParameter('product');
$cat_id = $product_params[category_id];
$name = $product_params[name];
...

konto usunięte

Temat: Mały trick z paramaterHolderem

Przecież na takiej zasadzie działa bindowanie formularza :)


$this->form->bind($request->getParameter($this->form->getName()));


Zawsze warto przeglądać jak działa symfony w środku, bo ciekawe rzeczy tam są :)Aleksander Wons edytował(a) ten post dnia 19.10.09 o godzinie 15:03

konto usunięte

Temat: Mały trick z paramaterHolderem

Ooo ... a ja do dzisiaj nie wiedziałem o "$this->form->getName()",
i dzisiaj odkryłem ;).

konto usunięte

Temat: Mały trick z paramaterHolderem

Piotr Plenik:
hmm ... nie widziałeś ... no co ty? ;)

możesz też:
$product_params = $request->getParameter('product');
$cat_id = $product_params[category_id];
$name = $product_params[name];
...

To jest normalny sposób, ale akurat bind nie działa na tej samej zasadzie bo "normalnie" korzysta z kluczy a nie tworzy sobie strukturę w której może szukać np takich odwołań [product][category][name]

konto usunięte

Temat: Mały trick z paramaterHolderem

Hehe. Zdziwiłbys się, co ludzie ciekawego wymyślają :D
Ostatnio miałem do dokończenia symfoniowy system gdzie wszystkie formularzy były bindowane tak:


$this->form->bind($request->getParameter('nazwa_formularza'));


Dlatego przezornie wole napisać ;)

konto usunięte

Temat: Mały trick z paramaterHolderem

Michał Wujas:
>
To jest normalny sposób, ale akurat bind nie działa na tej samej zasadzie bo "normalnie" korzysta z kluczy a nie tworzy sobie strukturę w której może szukać np takich odwołań [product][category][name]

Ale możesz np. w ten sposób bindować tylko embedowany formularz.
Zresztą mniejsza o to.
Ja zawsze staram się przynajmniej poglądowo zobaczyć do dokładnie robi symfoniowa funkcja którą odpalam, bo wtedy o wiele łatwiej rozwiązuje się pewne problemy.

konto usunięte

Temat: Mały trick z paramaterHolderem

Aleksander Wons:
Hehe. Zdziwiłbys się, co ludzie ciekawego wymyślają :D
Ostatnio miałem do dokończenia symfoniowy system gdzie wszystkie formularzy były bindowane tak:


$this->form->bind($request->getParameter('nazwa_formularza'));


Dlatego przezornie wole napisać ;)

Nie dziw się ... do jakiegoś czasu było to jedyne popularyzowane w dokumentacji rozwiązanie.
Na przykład w dokumentacji formsów nadal tak jest:
http://www.symfony-project.org/forms/1_2/en/02-Form-Va...

konto usunięte

Temat: Mały trick z paramaterHolderem

Ups... to chyba niedoczytałem dokumentacji ;)
Widać na zdrowie mi wyszło :D

konto usunięte

Temat: Mały trick z paramaterHolderem

Wrzuciłem do symfony.pl, będzie dla potomych ;).

http://www.symfony.pl/2009/10/snippet-wyciaganie-param...

Podobne tematy


Następna dyskusja:

witam mam mały problem




Wyślij zaproszenie do