Jak propojit dvě komponenty stránkování + filtrování?
- CZechBoY
- Člen | 3608
Zdravím,
jak efektivně a pěkně propojit komponentu na stránkování a
filtrování?
Používám pro filtrování metodu POST, pro stránkování metodu GET.
Filtrování se stránkováním spojím v presenteru, nemám žádný svůj
grid na výpis (obyč tabulka přes foreach + control paginator + control
filtersForm).
Stávající stav je, že filtrovací form si uloží data do session a při
změně stránky se data načtou odtamtud.
Takže když přijdu nově (znova, po filtrování) na první stránku tak už
mám vyfiltrováno.
Jak toto prosím řešíte? :)
Dík
- CZechBoY
- Člen | 3608
Jo, to dává smysl :D
Ale jaká minimální logika by tam měla být?
Jen tam ty dvě komponenty vložit umím taky, ale asi mi něco uniká… Jak si
uložím stav těch filtrů? Mimo tu session :-)
Nebo uložit filtry do session a persistním parametrem v GET si uložím odkaz
do té session?
- Pavel Kravčík
- Člen | 1202
Já jsem tedy pochopil komponenty, že se drží stav ve své instanci a session používám jen při přechodu mezi stránkami.
Jelikož tam posíláš jen signály, tak se Ti stav nemění. A nepotřebuješ k tomu session.
- CZechBoY
- Člen | 3608
Filtrování je (zatím) jen obyč formulář, který se naplní akorát
když POSTnu data. Takže snad ani žádný stav nemá …
Takže bych měl filtrovat a stránkovat podle signálů?
Jelikož teďka nemám žádnej grid (a ani se mi nechce nic šílenýho teďka
dělat) tak bych potřeboval nějak dostat data do presenteru a odtamtud do jeho
šablony (mám víc tabulek takto vypsaných).
Pořád mi to nějak nejde dohromady s tím co mám a jak by to mělo fungovat :(
- duskohu
- Člen | 778
Ja pouzivam kombinaciu:
FilterFormControl
ItemsPerPage
VisualPaginator
popripade
SortingControl
- Oli
- Člen | 1215
Používám to asi dost podobně jako @duskohu, akorát na to nemám univerzální komponenty. Prostě mám data, který předám do paginátoru. Je jedno jestli Selectize nebo array nebo něco jinýho.
No a filter nedělá nic jinýho, než že přesměruje na presenter
V routeru si to trochu upravím aby to vypadalo pěkně v URL (ale moc velký možnosti nejsou) a v presenteru se to zobrazí
Analogicky to můžeš poslat do nějaký komponenty, která ti zobrazuje data…
- duskohu
- Člen | 778
CZechBoY napsal(a):
Co když v url nechci mít vidět vyhledávání, tzn. musím použít POST pro filtrování?
Nie, lebo ked pouzijes dalsiu komponentu napr. po filtrovani paginator budes musiet parametre nejako zase predavat. V tom pripade by som odporucil session. Ja osobne pouzivam ajax, tym padom sa mi v url params nezobrazuju, ale to neznamena ze sa knim neda dostat.