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

Comment lire une collection qui dépend d'une autre dans Meteor

Code côté serveur :

Meteor.publish("latestPost", function () {
  var post = Posts.find({}, {sort:{created:-1}}).fetch()[0];
  console.log("publish : " + post.title);
  return [
    Posts.find({_id: post._id}),
    Comments.find({postId: post._id})
  ];
});

Code côté client :

 this.route('home', {
    path: '/',
    template: 'home',
    waitOn: function () {
      return [
        Meteor.subscribe('latestPost')
      ];
    },
    data:function(){
      return {
       post:Posts.findOne(),
       comments:Comments.find()
      };
    }
   });

Vérifiez ce dépôt pour voir l'exemple entier.

Une fois que l'utilisateur a changé de route, les abonnements sont automatiquement arrêtés.