mongodb – 无法找到使用Mongoose通过ObjectId搜索文档

  Campaign.find {client_id:req.param('client_id')}, (error, campaigns) ->
    if error
      response =
        error: error.message
    else
      for campaign in campaigns
        query =
          campaign_id: campaign._id
        console.log query
        CampaignResponse.find query, (err, campaignResponsesCount) ->
          console.log campaignResponsesCount

      response = campaigns

    res.json response

由于某些原因,此操作不会返回任何结果。但是,CampaignResponse中有与该特定campaign._id相关的项目。我很确定这是一个问题类型和铸造,但我不知道该怎么办。

任何帮助?

几个提示:

>尝试在命令行从mongodb运行相同的查询,看看是否获得任何结果。
>“campaign_id”是否定义为模式中的ObjectId?如果是这样,请尝试使用ObjectId类型进行搜索。

例如:

var ObjectId = require('mongoose').Types.ObjectId; 
var query = { campaign_id: new ObjectId(campaign._id) };
http://stackoverflow.com/questions/7878557/cant-find-documents-searching-by-objectid-using-mongoose

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:mongodb – 无法找到使用Mongoose通过ObjectId搜索文档