2012-01-01 24 views
5

Tôi mới sử dụng Mongo và đang sử dụng Mongoose làm ORM.Kiểm tra tài liệu hiện có tại Mongo

Để đăng ký người dùng, tôi đang sử dụng email là duy nhất. Tôi muốn kiểm tra xem email đã được sử dụng chưa, và nếu không, hãy làm một cái gì đó (có thể lưu, có lẽ bước đăng ký tiếp theo, v.v.).

Xin lỗi cho những gì có vẻ như một câu hỏi đơn giản, nhưng tôi chưa tìm thấy câu trả lời cho nó.

Trừ khi đó là "upsert". Điều này có nghĩa là chèn tài liệu, ngay cả khi tôi chưa sẵn sàng ...

Trả lời

7

Bạn có hỏi cách tìm tài liệu không?

db.users.findOne({email => '[email protected]'}) 

Nếu nó trả về nội dung, tài liệu tồn tại. Nếu không, nó không.

+6

cảm ơn - chỉ cần thử điều đó và nó hoạt động. User.findOne ({email: Địa chỉ email}, function (err, người dùng) { if (user) { console.log ("người dùng tồn tại") } else { console.log ("user không tồn tại ") } – bear

+0

Bạn cũng có thể sử dụng chức năng tìm kiếm + giới hạn (1) https://blog.serverdensity.com/checking-if-a-document-exists-mongodb-slow-findone-vs-find/ User.find ({email: email}, {}, {limit: 1}, chức năng ... – Aebsubis

Các vấn đề liên quan