Pogledajte određenu poruku
Staro 30. 01. 2012.   #26
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

@blues: ako u modelu direktno dohvatas $_POST onda moras da menjas model da bi dohvatio te podatke iz npr. memcache-a ili fajla... mozda ti to i ne treba, ali to je tako minorna razlika u kolicini koda u kontroleru da jednostavno nema opravdanja da taj $_POST ne prosledis kao parametar modelu i tako napravis 50x fleksibilniji kod...

Sto se tice validacije, ja to u svom FW-u radim ovako:

- Kontroler validira podatke koji se ticu njega, tipa provera sessiona, da li je CRLF zastita (token) ispravan, da li je confirm password isti kao passsword, da li je chekirano 'I Agree' i sl. To su podaci koji ne postoje ni u jednom modelu i odnose se samo na taj request i zato nema smisla to stavljati u model. Naravno te sve provere su osnovnoj klasi, a konkretni kontroleri to samo naslede i vecina provera se onda radi automatski... ovo vezano za registraciju se ocigledno radi samo u odgovarajucem kontroleru...

- Model validira sve podatke koji se nalaze u njemu, i to automatski, kod svakog inserta i updejta (koji je resen kao save($_POST) metoda koja sama shvati jel insert ili updejt i koje podatke treba da snimi). Svaki model ima validaciona pravila za sva polja u njemu, i onda poziva staticki Validator klasu, koja je odvojena utiliti klasa i koja radi konkretnu validaciju..

U sustini to je moja logika koju koristim jos negde od 2007, jednostavno sam kroz trial & error dosao do toga kao najboljeg (za lenstine kao ja) pristupa, a koliko vidim i vecina poznatih FW koristi nesto vrlo slicno, tako da stvarno mislim da je to najbolja praksa...
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 30. 01. 2012. u 06:08.
ivanhoe je offline   Odgovorite uz citat