Predavani promenne pomoci nadrazene tridy

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vendulka
Člen | 9
+
0
-

Resim takovou uchylnost a nedari se mi. Mozna mi zkusite nekdo poradit.

Mam presenter A, ktery funguje jako zakladni objekt, pripravuje ruzne promenne a distribuuje je.

Mam presenter B, ktery je potomkem A. Krome jineho B obsahuje formular. V pripade ze dojde k odeslani formulare, presenter B zmeni obsah nekterych promennych presenteru A.

Pocad je to hracka.

Mam presenter Ajax, ktery je potomkem A. Presenter Ajax se inicializuje ajaxovym requestem (v ramci presenteru B). Je tady jaksi ‚samostatny‘, nevi co se deje v ostatnich tridach.

A ted problem: V presenteru Ajax se potrebuji dostat k promenne presenteru A, pricemz tato promenna pri odeslani asi byla zmenena Bckem.
Je to vubec realizovatelne? Anebo se to opravdu musi resit predavanim promennych pri ajax requestu v B?

Predem dekuji za kazdou inspiraci :)

Editoval vendulka (16. 2. 2011 14:09)

arron
Člen | 464
+
0
-

Jestli tomu dobre rozumim, tak presentery B a Ajax jsou „sourozenci“ (a maji stejneho rodice A). Pak v tom pripade presenter Ajax nevidi do objektu B, protoze jsou to dva samostatne objekty. Ackoliv maji stejneho predka, tak to neni tak, ze by jeho data sdilely, ale kazdy ma ta svoje. Takze bych to resil bud predavanim parametru a nebo jinou hierarchii objektu.

vendulka
Člen | 9
+
0
-

Ano, je to presne jak popisujes. Ale doufala jsem, ze kdyz maji oba sourozenci spolecneho predka, budou schopni si pres predka nejak predavat promenne.

Nejspis to asi mozne neni.

Filip Procházka
Moderator | 4668
+
0
-

Pokud je v předkovi definován persistentní parametr, měl by se automaticky přenášet i napříč sourozenci.

Pokud ukážeš ty presentery (klidně osekane) s komentářem, kde potřebuješ co, zvládneme ti poradit lépe.

jasir
Člen | 746
+
0
-

Akci obsluhuje v jednu chvíli buď B nebo Ajax. Proto si budes muset parametry předat, třeba přes persistentní parametry předka, tedy A.

vendulka
Člen | 9
+
0
-

No prave, perzistentni parametry jsem zkousela, ale nechtelo mi to vratit hodnoty nastavene jednim z presenteru.
Musim ted jit offline, urcite vecer pripravim nejaky vzorovy kod. Je mozne, ze to funguje, ale nekde mam trivialni chybu.

Diky vsem, panove!

Chbox
Člen | 125
+
0
-

a session to nevyřeší?