我正在使用mongoose来操作mongodb。现在,为了测试,我想通过本地连接将一些数据插入到 mongodb 中。
但问题是插入后如何获取生成的id?
我试过了:
var mongoose = require('mongoose');
mongoose.connect('mongo://localhost/shuzu_test');
var conn = mongoose.connection;
var user = {
a: 'abc'
};
conn.collection('aaa').insert(user);
console.log('User:');
console.log(user);
但它会打印:
{ a: 'abc' }
没有 _id
字段。
最佳答案
您可以自己生成_id
并将其发送到数据库。
var ObjectID = require('mongodb').ObjectID;
var user = {
a: 'abc',
_id: new ObjectID()
};
conn.collection('aaa').insert(user);
这是我最喜欢的 MongoDB 功能之一。如果您需要创建多个相互链接的对象,则无需在 app 和 db 之间进行多次往返。您可以在应用程序中生成所有 id,然后插入所有内容。
https://stackoverflow.com/questions/10520501/
相关文章:
mongodb - 如何在 MongoDB Compass 工具中执行更新($set)查询?
mongodb - 如何为 MongoDB 中的嵌入式文档创建唯一 ID?
mongodb - 如何在 MongoDB 集合中获取特定的嵌入文档?
javascript - 如何在 Mongoose 中将 _id 设置为 db 文档?
ruby-on-rails - Mongoid/Mongodb 和查询嵌入文档
mongodb - 使用 mongimport 导入 JSON 文件,不断得到 `unexpecte