これは、Mongoose 'validate'を使用して行うことができます。 すべてのフィールドにアクセスできるようにするミドルウェア:
ASchema.pre('validate', function(next) {
if (this.startDate > this.endDate) {
next(new Error('End Date must be greater than Start Date'));
} else {
next();
}
});
検証エラーメッセージをJavaScriptのErrorでラップする必要があることに注意してください nextを呼び出すときのオブジェクト 検証の失敗を報告します。