如何使用mongoose从单个文档中获取_id?

时间:2014-06-09 01:13:17

标签: mongodb mongoose

我想查询具有给定条件的文档,并让它返回该文档的_id。这是我尝试过的,但它不起作用:

User.find(
    {phone: phone},
    null,
    {},
    function (err, data) {
        user_id = data._id;
    }
);

基本上,我尝试在Users集合中查询具有特定电话号码的用户/文档,然后让它返回该用户的_id。我做错了什么?

1 个答案:

答案 0 :(得分:1)

如果您只想找到一个文档,则需要使用findOne

User.findOne({phone : phone}, function(err, data) {
    if (err) return console.error(err);
    user_id = data._id;
});

如果多个文档满足查询,则此方法根据反映磁盘上文档顺序的自然顺序返回第一个文档。

如果您想要获取多个文档,则需要使用find,然后您的data参数将包含符合条件的所有用户。