如何在将mongodb中的文档字段传递给Node.js上的客户端之前为其分配一些值?
下面是将卡阵列发送到客户端的代码如何在将mongodb中的文档字段传递给Node.js上的客户端之前为其分配一些值?,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,下面是将卡阵列发送到客户端的代码 var cards = Card.find().sort('-created').exec(function (err, cards) { if (err) { return res.status(400).send({ message: errorHandler.getErrorMessage(err) }); } else { res.json(cards); }
var cards = Card.find().sort('-created').exec(function (err, cards) {
if (err) {
return res.status(400).send({
message: errorHandler.getErrorMessage(err)
});
} else {
res.json(cards);
}
});
模型卡有一个字段“ownerName”(在数据库中为空)和“ownerId”(某个用户的id)。对于每张卡,我需要通过card.ownerId找到一个用户,并将其名称分配到字段“ownerName”。我该怎么做呢?我想您已经有了
用户
模型。如果是这样的话,只需在您的卡
模型和用户
模型之间使用“sql join like”即可
“连接列”将是ownerId
一旦您获得了卡和用户的列表,您就可以将用户名分配到字段
ownerName
最好正确地使用它
var mongoose = require('mongoose')
, Schema = mongoose.Schema;
var cardSchema = Schema({
_id: Number,
owner: { type: Schema.Types.ObjectId, ref: 'User' },
});
var Card = mongoose.model('Card', cardSchema);
var cards = Card.find()
.sort('-created')
.populate('owner')
.exec(function (err, cards) {
//all cards have a 'owner' field populated with the referenced user doc
});