node.js - mongo met à jour le contenu dans une structure imbriquée
PHP中文网
PHP中文网 2017-05-02 09:26:29
0
3
591

Une table de questions, qui stocke toutes les questions. Chaque question a une clé de réponses, qui est un objet tableau. Chaque réponse a son propre _id et un attribut up. pour transmettre ce _id pour mettre à jour l'attribut up.
Comment font les seniors ? J'ai beaucoup essayé mais je n'arrive toujours pas à mettre à jour correctement, merci qaq

PHP中文网
PHP中文网

认证0级讲师

répondre à tous(3)
刘奇
db.questions.update({
    "answers._id": ObjectId("58f575ca09c601c45f6c281a")
}, {
    $set: {
        "answers.$.up": 1
    }
});

Notez l'opérateur $, nous l'appelons opérateur positionnel, veuillez consulter le lien pour plus d'informations.

滿天的星座

Je pense qu'il ne faut pas imbriquer la table de données si profondément. En général, je pense qu'il est plus raisonnable de construire une table relationnelle

过去多啦不再A梦

D'accord, en supposant que vous connaissez l'index de la réponse que vous souhaitez modifier dans le tableau des réponses, vous pouvez utiliser question.answers.index.up pour le mettre à jour. Si vous ne connaissez pas l'index maintenant, vous pouvez utiliser $. pour placer l'espace réservé et utilisez la mise à jour {answers for Filter ._id:123456} en utilisant {answers.$.up:321}

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal