鍍金池/ 問答/數(shù)據(jù)庫/ MongoDB 如何根據(jù)數(shù)組中某個(gè)元素的值添加數(shù)組?

MongoDB 如何根據(jù)數(shù)組中某個(gè)元素的值添加數(shù)組?

正在做一個(gè)博客相關(guān)的后臺(tái)
用的是

nodejs mongoose
{ 
"_id" : { "$oid" : "5a4245gdfh11514ccwegwr2re0" }, 
"id" : "5a57dfadfae453erw54rt33", "__v" : 0, 
"article" : [{ 
            "articleTitle" : "天氣好",
            "articleDate" : "2018-01-14",
            "content" : "天氣真好" 
            }, 
            { 
            "articleTitle" : "天氣不好",
            "articleDate" : "2018-01-07",
            "content" : "天氣真不好" 
            }]
 }

想在上面的集合中首先用id找到這個(gè)文檔 然后向文檔中article數(shù)組中articleTitle為天氣好的數(shù)組添加一個(gè)名字是comment的數(shù)組,期望結(jié)果是

{ 
"_id" : { "$oid" : "5a4245gdfh11514ccwegwr2re0" }, 
"id" : "5a57dfadfae453erw54rt33", "__v" : 0, 
"article" : [{ 
            "articleTitle" : "天氣好",
            "articleDate" : "2018-01-14",
            "content" : "天氣真好" ,
            "comment" : [{
                        "comment": "說的真好",
                        "date": "2018-01-14",
                        "userName": "lucy",
                        "id": "dad3fq4rqf4e4g5gsjki"
                        },{....}
                        ] 
            }, 
            { 
            "articleTitle" : "天氣不好",
            "articleDate" : "2018-01-07",
            "content" : "天氣真不好" 
            }]
 }

網(wǎng)上搜了很多都沒有找到根據(jù)數(shù)組某個(gè)條件添加的
其實(shí)就是想在某個(gè)文章根據(jù)文章標(biāo)題找到文章然后在文章后面添加評(píng)論,或者數(shù)組結(jié)構(gòu)設(shè)計(jì)有問題也可以指出
如何搜索和修改評(píng)論麻煩知道的也告訴一下
謝謝各位啦

回答
編輯回答
若相惜

自己嘗試了好多遍試出答案了 貼出來方便需要的人
models.article.update({id:id,"article.articleTitle":articleTitle},{$push:{"article.$.comment":comment}},{upsert:true}, (err, data) => {})

2017年6月7日 06:07