Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: MVC
Forum PHP.pl > Forum > PHP > Object-oriented programming
Damiankossek
Witam,
Mam pytanie ponieważ nie wiem czy dobrze robię, przykładowo mam w modelu metodę która sprawdza czy wszystkie zależności są poprawne, jeżeli nie to wyskakuje błąd i przykładowo
  1.  
  2. if($extensionCfg['ver_req'] > $systemCfg['version'])
  3. {
  4. $array['error'][] = 'Zbyt niska wersja Twojego oprogramowania. Wymagana '.$config['ver_req'];
  5. $array['status'] = FALSE;
  6. }
  7.  
  8. if(!model_system_extensions::extensionExists($config['req_ext']));
  9. {
  10. $array['error'][] = 'Brak wymaganych zależności';
  11. $array['status'] = FALSE;
  12. }
  13.  


Czy dopuszczalnym jest w modelu pisanie tekstu ? Macie jakieś lepsze metody na takie sprawy jak zwracanie wielu błędów ? (Kohana Framework)
erix
No wyjątku tu nie zrobisz, bo tylko jeden błąd wtedy zwróci.

Cytat
Czy dopuszczalnym jest w modelu pisanie tekstu ?

A dlaczego nie?

Cytat
Macie jakieś lepsze metody na takie sprawy jak zwracanie wielu błędów ?

Chyba prościej i sensowniej się nie da. Ewentualnie jakąś sensowniejszą nomenklaturę, ale nie wiem, jak masz ją określoną w projekcie. wink.gif
Damiankossek
No to w takim razie dzięki smile.gif bo tak mnie to Gryzlo czy dobrze robie ... Ale skoro jest to dopuszczalne to w takim razie dzięki bardzo

Pozdrawiam
zend
Mnie osobiście boli takie rozwiązanie happy.gif Zapisz kody błedów w jednym miejscu i za pomocą klasy/funkcji pobieraj je, np
Kod
getMsg('toLowSoftwareVersion' , array('required' => '123' , 'current' => '122'));
LSM
Unikam pisania tekstów bezpośrednio w klasach - jeśli przyjdzie zmienić system na inną wersję językową trochę kiepsko zmieniać potem i wyszukiwać w plikach polskich tekstów. Stosuje stałe zdefiniowane w jakimś pliku konfiguracyjnym. Każdy komunikat mam wtedy w jednym miejscu.
np:
  1. define('MSG_WRONG_APP_VERSION', 'Zbyt niska wersja Twojego oprogramowania. Wymagana ' .$config['app_ver'] );
  2. // lub
  3. $config['msg']['errors']['msg_wrong_app_version'] = ' Zbyt... ' ;
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.