通过_id获取Mongodb graphQL和Feather js数据在某些情况下返回null

时间:2018-12-02 03:57:51

标签: node.js mongodb graphql feathersjs

我试图在mongoDB中基于_id获取记录,在mongoDB控制台中它可以正常工作,但是当我尝试在GraphQL和Feather js中实现相同的代码时,它返回null,未找到记录,但是记录了在数据库中。如果我将值更改为507F191M810c19729De860eA,则返回记录。它适用于一些值。这是一个很奇怪的问题。

Locations.find(
      { 
        query: 
        { 
          _id: "2313891acb3420defAFadefc" 
        }
      }
    ).then(function(result){
      console.log(result)
    }

1 个答案:

答案 0 :(得分:1)

请尝试通过将其转换为objcectId来找到mongoId。您将id作为简单字符串传递。可能是您没有获取数据。

var ObjectID = require('mongodb').ObjectID;

现在您可以将字符串转换为mongo的ID。

Locations.find(
  { 
    Query: 
    { 
      _id: ObjectID("2313891acb3420defAFadefc") 
    }
  }
).then(function(result){
  console.log(result)
}