我有以下架构:
var userSchema = mongoose.Schema({
local : {
email : String,
password : String,
movies : [{
moviename : String,
rating : Number
}],
}
});
我的问题是:
我可以将条目保存到另一个条目中吗?即可以顺序保存电影,而不是同时保存所有电影(数组条目)吗?换句话说,电影数组可以动态增长吗?
我正在尝试做的是:
user.movies = { moviename : "Top Gun",
rating : 80};
user.save(function (err) {
if (err)
console.log("Error in saving");
res.end(0);
});
我相信保存是有效的,因为我没有收到错误,但是我迷失在如何检索数组中的条目上。有人可以给我一个例子或参考如何访问条目。另外,关于限制的任何其他参考,例如重复的数组条目(相同的影片)。
谢谢你。
是的,您可以一个接一个地添加电影。
1)您可以添加影片而无需检索任何项目:
userSchema.findOneAndUpdate({_id:...},
{$push:{"local.movies":
{movieName:"movie Name", rating:5}}},
{'new':true}, function(err,doc){ ... })
2)使用猫鼬,您可以检索项目,添加电影并保存:
user.local.movies.push({ moviename : "Top Gun", rating : 80});
user.save(function (err) {
if (err)
console.log("Error in saving");
res.end(0);
});
关于访问电影数组,如果您检索用户文档,则根据您的模式,可以使用user.local.movies访问电影
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句