我用我的節點的應用程序貓鼬,我想通過它的電子郵件得到賣家:貓鼬不返回,但蒙戈外殼爲
getSellerByEmail : function(email,next){
var Seller = mongoose.model('Seller');
console.log(inspect(email));
Seller.findOne({'email' : new RegExp(email, 'i')}, function(seller){
next(seller);
});
}
當我嘗試登錄,貓鼬不返回新用戶。但是,當我嘗試使用相同的電子郵件創建另一個用戶時,服務器正確執行此功能並返回新用戶。
也嘗試與{'email' : email}
和它返回null
,但是當我在mongo shell上執行此查詢時,它會正確返回。
db.sellers.findOne({email : '[email protected]'});
{
"_id" : ObjectId("54b94759b042bdbf19cb7b97"),
"name" : "Nome da Empresa",
"cnpj" : "123123123",
"email" : "[email protected]",
"password" : "$2a$08$6UvW8Bux3CwUMok8ac12Sehbd.xCHnVUI51ZwhtGKBjkSa6/MrqUu",
"__v" : 0
}
我是新來的MongoDB +貓鼬,所以我知道這是一個愚蠢的問題,但我不能體會到什麼是錯的......我還創建了一個findSellerById()
功能,它完美。
編輯1:
使用貓鼬調試,下面是它的打印的內容:
Mongoose: sellers.findOne({ email: '[email protected]' }) { fields: undefined }
Mongoose: sellers.findOne({}) { fields: undefined }
正如你所看到的,也試過不帶參數,沒有成功...
它的工作,非常感謝你!但是你知道爲什麼它以前有效嗎? –
我不能說,但這絕對是正確的方法。 :) – JohnnyHK