2nd
Aktives Mitglied
Thread Starter
- Dabei seit
- 25.07.2004
- Beiträge
- 9.018
- Reaktionspunkte
- 243
Moin,
wie ich ja woanders schrub (), bastle ich gerade mit MVC rum.
Über eine Frage sinniere ich seit längerem und finde zu keiner zufrieden stellenden Antwort.
Nehmen wir mal an, mein Model heisst "news".
Das Model "news" hat folgende Methoden:
• news->insert()
• news->update()
Ich bewege mich im entsprechenden Controller meiner Anwendung, dieser ist mit $this referenziert. Ferner habe ich noch eine Inputklasse, die die $_POST Daten "vor"gereinigt enthält.
Es geht nun um diese Daten, die aus einem Userformular kommen: Wer validiert diese? Soll die Validierung fest ans Model gebunden werden:
Oder sollte die Validierung der Controller übernehmen, zum Bsp. so:
Die Validierung ans Model zu binden behagt mir mehr, da man so aus allen möglichen Controllern die Möglichkeit hätte, auf CRUD-Operationen eines betehenden Models zurückzugreifen, ohne die Validierung jedes Mal neu an den entsprechenden Controller zu binden.
Ich brauche 'ne Offenbarung :=)
Cheers,
2nd
wie ich ja woanders schrub (), bastle ich gerade mit MVC rum.
Über eine Frage sinniere ich seit längerem und finde zu keiner zufrieden stellenden Antwort.
Nehmen wir mal an, mein Model heisst "news".
Das Model "news" hat folgende Methoden:
• news->insert()
• news->update()
Ich bewege mich im entsprechenden Controller meiner Anwendung, dieser ist mit $this referenziert. Ferner habe ich noch eine Inputklasse, die die $_POST Daten "vor"gereinigt enthält.
Es geht nun um diese Daten, die aus einem Userformular kommen: Wer validiert diese? Soll die Validierung fest ans Model gebunden werden:
PHP:
$errorCode = $this->news->insert($this->input);
if ( $errorCode > 0 )
{
$viewdata['errorCode'] = $errorCode;
}
else
{
// alles super!
}
Oder sollte die Validierung der Controller übernehmen, zum Bsp. so:
PHP:
if ( $this->input->validation() == false )
{
viewdata['errorCode'] = $this->input->errorCode;
}
else
{
$this->news->insert($this->input);
}
Die Validierung ans Model zu binden behagt mir mehr, da man so aus allen möglichen Controllern die Möglichkeit hätte, auf CRUD-Operationen eines betehenden Models zurückzugreifen, ohne die Validierung jedes Mal neu an den entsprechenden Controller zu binden.
Ich brauche 'ne Offenbarung :=)
Cheers,
2nd