vlastní funkce – úložiště – MVP

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
masterr
Začátečník | 141
+
0
-

Mám nějaké fce (úpravu url, ukládání souboru…), chci je volat v presenteru. Otázka zní:
Kam mám ty fce ukládat, jak je volat, mám k tomu používat model? Nebo model slouží jen na práci s db? THX

redhead
Člen | 1313
+
0
-

Model slouží jako stav aplikace, rozhodně ale neplatí, že by model měl dělat pouze s DB. Na druhou stranu pokud tyto metody jsou jaksi obecné, dal bych je jako statické do nějakách helper tříd (nebo tzv. Utils – utilities). Podobné je to se zkracováním dlouhého textu, formátování data, atd..

masterr
Začátečník | 141
+
0
-

Ale podle toho, co jsem se dočetl tak helper je jen na vykreslení v sabloně, jenže ja vysledek te fce potřebuji ulozit do db nebo soubory na server apod.

Jak to řešit?

Jan Endel
Člen | 1016
+
0
-

Já si představoval model jako jakousik krabičku s nápisem „Product“ (například) a presenter si díky modelu a funkci load mohl produkt vesele načíst a už mu bylo jedno jestli to tahá z MySQL, MSSQL databáze nebo ze souboru. Čili pokud ukládáš soubor na disk, podle mě to patří do modelu a co se týče té změny URL na to bych poslal výše zmíněný helper.

masterr
Začátečník | 141
+
0
-

Taky jsem o tom uvazoval a mám na to stejný názor, udelám to tak.

Je asi lepší upravovat to url až při vypisu v sablone pomoci helperu nez to ukladat zvlast do db a pak nacitat, že j? Jde mi čistě o rychlost načítání…

Editoval masterr (3. 10. 2010 21:08)

Jan Endel
Člen | 1016
+
0
-

Dotazování do DB bude vždycky pomalejší než zpracovat url jenom přes helper.

westrem
Člen | 398
+
0
-

masterr napsal(a):

Taky jsem o tom uvazoval a mám na to stejný názor, udelám to tak.

Je asi lepší upravovat to url až při vypisu v sablone pomoci helperu nez to ukladat zvlast do db a pak nacitat, že j? Jde mi čistě o rychlost načítání…

Upravu URL rozhodne ako nejaku helper metodu – ak to pouzivas castejsie tak vytvor separatnu staticku triedu a umiestni to do nej.

Narabanie so subormi je uz konkretna vec uloziska, takze to samozrejme patri do modelu, konkretne ak sa nemylim do mapper vrstvy.

V neposlednom rade: do DB si vzdy ukladaj veci v tzn kanonickom formate, pripadne nejakom standardizovanom, z ktoreho si neskor schopny spravit cokolvek co aplikacia bude vyzadovat (aby si ho neskvor mohol formatovat, menit apod). Ak zaroven planujes vykonavat aj nejaku casovo narocnu transformaciu, stoji za uvazenie ukladat do DB uz aj tuto transformovanu podobu (avsak spolu s povodnou, nie namiesto nej) a v pripade potreby sa na nu okamzite dotazovat a neprevadzat ju stale.