Javascript 将对象推到对象数组mongoose中的对象数组上
我试图将一个对象添加到组件数组中。但此组件数组位于projects对象内的Javascript 将对象推到对象数组mongoose中的对象数组上,javascript,mongodb,express,mongoose,Javascript,Mongodb,Express,Mongoose,我试图将一个对象添加到组件数组中。但此组件数组位于projects对象内的“scenes”数组中。这是我的断开路线和一个项目模型,以显示模型中所有字段的位置。我似乎无法解决这个问题,我花了几个小时来诊断这个问题 { "_id": { "$oid": "5c01c26ec028296289f53b00" }, "update": false, "publishStatus": "draft", "user": { "$oid"
“scenes”
数组中。这是我的断开路线和一个项目模型,以显示模型中所有字段的位置。我似乎无法解决这个问题,我花了几个小时来诊断这个问题
{
"_id": {
"$oid": "5c01c26ec028296289f53b00"
},
"update": false,
"publishStatus": "draft",
"user": {
"$oid": "5bee30aed343c30016a664b5"
},
"projectName": "Griffith Uni",
"description": "sdaidjasidjasidjiasdjsad",
"scenes": [
{
"_id": {
"$oid": "5c01c29dc028296289f53b02"
},
"sceneName": "Persona Choose",
"components": []
},
{
"_id": {
"$oid": "5c01c2acc028296289f53b04"
},
"sceneName": "Home Menu",
"components": []
},
{
"_id": {
"$oid": "5c0208b16c550072b6b3b499"
},
"sceneName": "The Smiths",
"components": []
}
],
"lastUpdated": {
"$date": "2018-11-30T23:06:22.173Z"
},
"__v": 0
}
router.post(
"/projects/scenes/components/new",
passport.authenticate("jwt", { session: false }),
(req, res) => {
const newComp = new Components({
content: req.body.content
});
Project.findById(
{ _id: req.body.projectID },
Project.findByIdAndUpdate(
{ _id: req.body.sceneID },
{ $push: { components: newComp } },
() => res.json(newComp)
)
);
}
);
如果我理解正确,您可以使用以下代码执行此操作
router.post(
"/projects/scenes/components/new",
passport.authenticate("jwt", { session: false }),
async (req, res) => {
const newComp = new Components({
content: req.body.content
});
await Project.findOneAndUpdate(
{ _id: req.body.projectID, "scenes._id": req.body.sceneID },
{
$push: { "scenes.$.components": newComp }
}
);
res.json(newComp);
}
);
共有3个
组件
,您必须指定您的问题。加在一起?第一名?第二,你可能应该澄清你使用的术语:“项目”是你展示的对象吗?“projects”是数据库中集合的名称{“\u id”:{“$oid”:“5c01c26ec028296289f53b00”},“update”:false,“publishStatus”:“draft”,“user”:{“$oid”:“5bee30aed343c30016a664b5”},“projectName”:“Griffith Uni”,“description”:“sdaidjasidjasidjiasdjsad”,“lastUpdated”:“{“$date”:“2018-11-30T23:06:22.173Z”},“场景”:[{“组件”:[],“\u id”:{“$oid”:“5C0343C694F36E885FEF4C8”},“场景名称”:“选择角色”}]code
项目的模拟数据object@exodus2017上述代码是否没有完成您的目标?我创建了一个与您的模型相匹配的模型,并且处理程序按照我的预期执行。