2016-08-03 97 views
0

是否有任何選項可以爲該獨特屬性設置例外?如果值未提交,我不希望MongoDB設置爲null,或者在唯一性情況下爲null值設置例外。貓鼬 - 防止MongoDB計數爲空作爲唯一值

userSchema = mongoose.Schema({ 
    /* ... additional Schema properties ... */ 
    email: {type: String, lowercase: true, unique: true} 
}); 

如果我可以在mongoose.Schema中設置例外,那將會很好,很容易。顯然,所有其他解決方案也受到讚賞。 感謝您的時間!它幫助我很多。 :)

+0

的http://stackoverflow.com/questions/7955040/mongodb-mongoose-unique-if-not-null – JohnnyHK

回答

0

如何處理文檔?在該字段上設置驗證。如果數據不通過驗證,它實際上會返回錯誤。

http://mongoosejs.com/docs/validation.html

+0

可能欺騙我發現很多選項來限制可能提交的數據,但不幸的是我沒有」 t找到任何可能性爲空bean忽略從獨特的屬性 – dunnohowishouldnamemyself

+0

那麼..您的電子郵件字段驗證方法將執行之前保存。它不會保存數據,直到它通過真正的測試,而是返回錯誤。您可以將其發送給用戶或保存到日誌中。看看有關文檔的示例。只要嘗試添加驗證到電子郵件字段,並嘗試保存與空字段。 –