„Probublávání vyjímek“ – posílat z modelu do presenteru, nebo zpracovat přímo tam?

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

Ahoj,
mám dotaz, který se možná netýká jen nette ale struktury kódu obecně.

V PHP jsem dřív řešil jednoduché programy, teď bych se rád naučil pořádně objekově, správně pracovat s vyjímkami apod.

S tím souvisí můj dotaz :
V modelu, který má vytvořit nový záznam v tabulce dojde při zápisu k chybě a dostanu zpět DIBIException.
A nevím jestli tu chybu mám obsloužit už v modelu a vrátit přímo požadovanou chybovou hlášku „E-mail je již zaregistrován“ nebo vyhodit tuhle exception dál do presenteru, tam si ji znova odchytit a až tam podle kódu sestavit hlášku.

assassik
Člen | 43
+
0
-

Odchytit už v modelu a bud řešit chybu pomocí návratový hodnoty, nebo vlastní vyjmkou… DIBIException by mělo zůstat podle mě v modelu, přijde mi to jako kdyby se v presenteru pak používalo dibi::query atd.. takhle zůstane dibi jen v modelový vrstvě a o tom to je.

baz
Člen | 42
+
0
-

JJ to je druha varianta, kterou jsem mel v hlave, ze bych vracel chybovy kod a v presenteru si podle kodu uz zvolil odpovidajici hlasku.

Díky za názor, kdyby někdo měl nějaký jiný, sem s ním :-)