node.js - 即使在sails.js中使用mongodb的ObjectID也找不到记录
问题描述
在sailsjs 上并使用mongodb 的ObjectID 对象,我无法使用本机mongodb 驱动程序在数据库中findOne() 记录。
// Included the ObjectID from the mongodb dependency on sails-mongo layer
var mongodb = require("sails-mongo").mongodb;
var ObjectID = mongodb.ObjectID;
// Inside the action2 controller...
var db = sails.getDatastore().manager;
var record = db.collection('event').findOne({_id: new ObjectID(inputs.event.id)});
// Returns an empty object
exits.success(record);
我希望收到数据库中记录的 json,但我收到的是一个空对象。
解决方案
这可能是因为您没有获得inputs.event.id的值,或者您将其作为其他数据类型获得并且它没有生成 mongoDB objectId。
记录并检查。
推荐阅读
- loopback - Loopback 4 什么是存储库?
- apache-spark - Spark 失败 - 期货超时
- java - 初始化时 Selenium WebDriver NoElementException
- visual-studio - Visual Studio - 扩展安装“找不到安装引擎实例。”
- express - 如何通过 express 应用在视图中使用文件夹
- python - matplotlib 中的压缩一维数组未显示多个图像
- javascript - 获取输入并将其输出到 HTML 文件时出现问题
- c# - 将字符串写入文本文件不起作用?
- c++ - 使用 rdbuf(NULL) 时 istream 对象的意外返回值
- rust - 如何设置这些结构的寿命?