2012-01-01 83 views
5

我是Mongo新手,正在使用Mongoose作为ORM。检查Mongo中的现有文档

对于用户注册,我使用电子邮件作为唯一。我想检查电子邮件是否已经被使用,如果不是,那么做一些事情(也许保存,也许下一次注册步骤等)。

对不起,看起来像一个简单的问题,但我还没有找到答案。

除非它是“upsert”。这意味着插入文件,即使我还没有准备好......

回答

7

你问的是如何找到一个文件?

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

如果它返回一些内容,则存在文档。否则,它不会。

+6

谢谢 - 只是试过,它的工作。 User.findOne({电子邮件:电子邮件},功能(ERR,用户){ 如果(用户){ 的console.log( “用户存在”) } 其他{ 的console.log(“用户不存在“) } – bear 2012-01-01 17:32:10

+0

您也可以使用find函数+ limit(1) https://blog.serverdensity.com/checking-if-a-document-exists-mongodb-slow-findone-vs-find/ User.find({email:email},{},{limit:1},函数... – Aebsubis 2014-06-24 10:06:01