MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment renverrais-je la commande de messages MongoDB par heure Favori par l'utilisateur ?

Au lieu de simplement enregistrer les messages qu'un utilisateur aime :

Meteor.users.update({ _id: this.userId },{ $addToSet: { liked: postId }});

Poussez un objet qui inclut à la fois le postId et la date actuelle

Meteor.users.update({ _id: this.userId },
  { $push: { liked: { postId: postId, likedAt: new Date() }});

Cela résout votre question "où stocker", mais cela vous complique la vie à d'autres égards, car votre requête de recherche/tri sera plus compliquée. Vous devrez également empêcher les doublons avec du code car tandis que $addToSet le fait automatiquement pour vous $push pas.