カスタムメッセージで一意のパラメータはサポートされていませんか?
Mongooseの一意性は、検証パラメーターではありません(required
など) ); Mongooseに、そのフィールドのMongoDBに一意のインデックスを作成するように指示します。
一意性の制約は、MongoDBサーバーで完全に処理されます。キーが重複しているドキュメントを追加すると、MongoDBサーバーは表示されているエラー(E11000...
)を返します。 。
カスタムエラーメッセージを作成する場合は、これらのエラーを自分で処理する必要があります。マングースのドキュメント(「エラー処理ミドルウェア」 )カスタムエラー処理を作成する方法の例を提供します:
emailVerificationTokenSchema.post('save', function(error, doc, next) {
if (error.name === 'MongoError' && error.code === 11000) {
next(new Error('email must be unique'));
} else {
next(error);
}
});
(ただし、これは一意性制約が失敗した特定のフィールドを提供しません)