gpt4 book ai didi

angularjs - MongoDB - InsertOne() 获取 InsertID

转载 作者:太空宇宙 更新时间:2023-11-04 01:44:08 26 4
gpt4 key购买 nike

我正在将文档插入到名为 users 的集合中。插入后,我想返回文档 ID 以便继续使用它。所以我写了这段代码:

this.db.collection("users")
.insertOne({ xy })
.then(ref => {
console.log(ref.insertedId);
});

返回的insertedId 等于这样的内容:

id:Uint8Array(12) [89, 131, 152, 99, 28, 157, 43, 0, 0, 90, 228, 11]

但我真的无法处理这个。我需要一个连续的字符串或数字。

感谢任何帮助:)

最佳答案

使用 MongooseJS : https://mongoosejs.com/

models/user.js内创建一个用户模型

 var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var userSchema = new Schema({
name: String,
email: String,
created_at: { type: Date, default: Date.now },
},{
collection: 'User'
});

var User = module.exports = mongoose.model('User', userSchema);

在您的 index.js 中需要此 user.js 文件

global.User = require('./models/user');

你的index.js应该是:

global.express = require('express');
global.app = express();
global.bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: true }))
app.use(bodyParser.json())
global.mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/mydb');
global._=require('underscore');
global.User = require('./models/user');

app.post('/insert',function(req,res){
console.log(req.body);

var user=new User({
name:req.body.name;
email:req.body.email;
});
user.save();
User.find({},function(err,users){
(!err && users){
console.log(users);
var userIDs=_.pluck(users,'_id');
return res.json({
users:userIDs
});
}
})
});

app.listen(3000);

你的前端应该是html形式

<form method="post" action="/insert">
<input type="text" name="name" required/>
<input type="email" name="email" required/>
<button type="submit">Submit</button>
</form>

关于angularjs - MongoDB - InsertOne() 获取 InsertID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52078605/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com