node.js - mongo更新巢狀結構中的內容
PHP中文网
PHP中文网 2017-05-02 09:26:29
0
3
592

一個questions表,存所有的問題,每一個question有一個answers的key,是個數組對象,每個answer有自己_id和一個up屬性,現在想透過這個_id來更新up屬性。
請問前輩們如何做?試了很多都沒辦法正確更新,謝謝qaq

PHP中文网
PHP中文网

认证0级讲师

全部回覆(3)
刘奇
db.questions.update({
    "answers._id": ObjectId("58f575ca09c601c45f6c281a")
}, {
    $set: {
        "answers.$.up": 1
    }
});

注意$運算符,我們叫它Positional Operator,更多內容請看連結。

滿天的星座

我覺得你不應該把資料表嵌套這麼深,一般建一個關係表我覺得比較合理

过去多啦不再A梦

可以的假設你知道要修改的answer在這個answers數組中的索引你可以用question.answers.index.up來更新,現在不知道這個索引,你可以用$來佔位,Filter用{answers._id :123456} update用{answers.$.up:321}

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板