Ich versuche, die Validierung in meinen Sequelize-Modellen zu implementieren. Das Modell ist wie folgt definiert:
%Vor%Dann versuche ich eine Instanz zu erstellen und sie zu validieren:
%Vor% Aber wenn ich console.log(err)
mache, bekomme ich nur { fct: [Function] }
. Das Definieren eines benutzerdefinierten Prüfprogramms, das eine Ausnahme auslöst, führt zu einer unbehandelten Ausnahme.
Wie soll ich validate()
richtig benutzen?
Hier erfahren Sie, wie Sie Ihr Problem mit Sequelize v2.0.0
:
Dies führt zu:
%Vor% Randnotiz: Sie können auch den validate
-Aufruf überspringen und stattdessen nur die Instanz erstellen:
Die Fehlermethode wird das gleiche Fehlerobjekt wie im vorherigen Code-Snippet erhalten.
Grüße, sdepold.
Ein alternativer Ansatz zum Validieren in Sequelize verwendet einen Haken anstelle einer Modellvalidierung. Ich verwende den 'beforeValidate'-Hook und füge eine benutzerdefinierte Validierung (unter Verwendung des Validator-Moduls) mit Promises hinzu, die abgelehnt werden, wenn die Validierung fehlschlägt.
%Vor%Das hat bei mir funktioniert Im Modellgebrauch: -
%Vor%Gehen Sie in Ihrer Steuerlogik während des Speicherns folgendermaßen vor: -
%Vor%Tags und Links node.js sequelize.js