将元素推送到Deepley嵌套对象的数组MongoDb

时间:2020-11-01 04:37:50

标签: node.js database mongodb mongoose database-update

我正在建立一个社交网络,用户可以喜欢其他人的帖子。我将node.js用作后端,并将MongoDb用作数据库,而且我也使用Mongoose一起使用它们。

我有一个如下所示的模式:

name: String,
nick: String,
email: String,
password: String,

bio: String,
color: String,
followers: [String],
followings: [String],

posts: [{
    author: {
        name: String,
        nick: String
    },
    content: String,
    date: Date,
    simpleDate: String,
    color: String,
    likes: [String]
}]

Mongo自动为每个posts元素添加一个“ _id”属性。 我想使用户单击“喜欢”按钮时发送带有单击的帖子的_id的get请求,然后查找具有_id等于发送的_id的帖子,并将用户的昵称推送到该帖子中的点赞数组。

我可以找到这样的帖子

User.findOne({'posts._id': req.params.postId},{ 'posts.$.': 1, _id:0},(err,results)=>{
    if(err){
        
    }
    console.log(results.posts[0]);
    res.redirect('/');
});

但是我无法更新。

它非常深入,我是MongoDb的新手。我该如何解决我的问题?

0 个答案:

没有答案
相关问题