保存后填充
我有这样的代码:
message.save().then(message => {
let result = {
ok: true,
message
}
res.send(result);
})
这给出了这样的JSON:
{
"ok": true,
"message": {
"_id": "5c5fe65236bcc31eb0a3db46",
"from": "5c5f1f1c4042b431d4611127",
"to": "5c5f201b4042b431d4611128",
"message": "Con imagen",
"image": "img/1549788754143.jpg",
"sent": "2019-02-10T08:52:34.144Z",
"__v": 0
}
}
我想从外地填充,这是做的最好的方法是什么?我只用填入后.find(),我找不到任何办法做到这一点。
.save()不允许你使用.populate()
回答如下:这工作:
message.save().then(savedMessage => {
Message.findById(savedMessage._id).populate('from').then(data => {
let result = {
ok: true,
data
}
res.send(result);
})
})
.save()没有方法.populate(),所以这一招能够在Web服务,这是非常有用的返回填充的字段。
这个Web服务返回的JSON现在是这样的:
{
"ok": true,
"data": {
"_id": "5c60791c834b900bf0383440",
"from": {
"_id": "5c5f1f1c4042b431d4611127",
"name": "admin",
"password": "03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"image": "img/1549737756964.jpg",
"__v": 0
},
"to": "5c5f201b4042b431d4611128",
"message": "Con imagen",
"image": "img/1549826332017.jpg",
"sent": "2019-02-10T19:18:52.018Z",
"__v": 0
}
}
保存后填充
我有这样的代码:
message.save().then(message => {
let result = {
ok: true,
message
}
res.send(result);
})
这给出了这样的JSON:
{
"ok": true,
"message": {
"_id": "5c5fe65236bcc31eb0a3db46",
"from": "5c5f1f1c4042b431d4611127",
"to": "5c5f201b4042b431d4611128",
"message": "Con imagen",
"image": "img/1549788754143.jpg",
"sent": "2019-02-10T08:52:34.144Z",
"__v": 0
}
}
我想从外地填充,这是做的最好的方法是什么?我只用填入后.find(),我找不到任何办法做到这一点。
.save()不允许你使用.populate()
回答如下:这工作:
message.save().then(savedMessage => {
Message.findById(savedMessage._id).populate('from').then(data => {
let result = {
ok: true,
data
}
res.send(result);
})
})
.save()没有方法.populate(),所以这一招能够在Web服务,这是非常有用的返回填充的字段。
这个Web服务返回的JSON现在是这样的:
{
"ok": true,
"data": {
"_id": "5c60791c834b900bf0383440",
"from": {
"_id": "5c5f1f1c4042b431d4611127",
"name": "admin",
"password": "03ac674216f3e15c761ee1a5e255f067953623c8b388b4459e13f978d7c846f4",
"image": "img/1549737756964.jpg",
"__v": 0
},
"to": "5c5f201b4042b431d4611128",
"message": "Con imagen",
"image": "img/1549826332017.jpg",
"sent": "2019-02-10T19:18:52.018Z",
"__v": 0
}
}