我成功地将以下内容作为字符串插入到mongo db中。但我希望将其作为objectId插入。
parentId": "5ced2388dbbbe124d8671067"
这是字符串格式的parentId。
如何将其转换为objectId格式?
答案 0 :(得分:3)
Mongodb 4.0 引入了 $ toObjectId 聚合,可将字符串值转换为ObjectId。这是一个例子
db.getCollection('foo_collection').aggregate([
{ "$addFields": {
"bar" : { "$toObjectId": "$bar_id" }
}},
{ "$out": "new_foo_collection" }
])
这里是link
答案 1 :(得分:2)
您可以使用猫鼬:
const mongoose = require('mongoose');
let yourId = mongoose.Types.ObjectId('5ced2388dbbbe124d8671067');
它将返回类型ObjectId
的变量。
答案 2 :(得分:2)
您必须这样使用mongoose
var mongoose = require('mongoose');
var id = mongoose.Types.ObjectId('5ced2388dbbbe124d8671067');
答案 3 :(得分:1)
对于打字稿:
Type mismatch: inferred type is (???) -> Unit but OnTaskCompletedListener<???> was expected
然后
import mongoose from "mongoose"; // will work
import * as mongoose from "mongoose"; // won't work
快乐编码。
答案 4 :(得分:0)
const ObjectId = require('mongodb').ObjectID
parentId = "5ced2388dbbbe124d8671067"
let data = new ObjectId(parentId)
console.log(typeof(data))
console.log(typeof(parentId))
答案 5 :(得分:0)
可以通过编写两行代码将其保存为对象ID来完成
let ObjectId = require('mongodb').ObjectID;
parentID = ObjectId("5ced2388dbbbe124d8671067")