2 Stimmen

Was gehört in django Modell saubere Methode

Ich frage mich, was die geeigneten Dinge, um in meinem Modell die clean()-Methode setzen sind.

Ist es sinnvoll, alle Überprüfungen und Manipulationen an den Eigenschaften eines Modells vorzunehmen, um sicherzustellen, dass es gültig ist (d. h. Geschäftslogik)? In meinem Fall gibt es eine Menge davon, und ich frage mich, ob es sinnvoll ist, das alles jedes Mal auszuführen, wenn ein Modell gespeichert wird.

Zum Beispiel mache ich Dinge wie: - wenn ein Video als privat markiert ist, alle Verweise in den Playlsts entfernen - sicherstellen, dass der Titel des Videos in Bezug auf die anderen Videos des Nutzers eindeutig ist - usw.

Einige der Dinge, die ich tue, müssen wirklich nur bei der Erstellung eines neuen Videos gemacht werden - also scheint es übertrieben, sie jedes Mal zu überprüfen/einzustellen, wenn das Modell gespeichert wird.

Ist dies die richtige Verwendung der Methode clean()?

0voto

Brandon Taylor Punkte 31967

Die Klärung von Beziehungen wird wahrscheinlich am besten durch ein Signal geregelt. Um zu überprüfen, ob Ihre Signale richtig funktionieren, können Sie einen Unit-Test schreiben.

Die Überprüfung der Eindeutigkeit des Titels gehört unbedingt in ein Formular/Modell-Validierungsprogramm. Für mich scheint das eine bessere Trennung der Anliegen zu sein.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X