2017-01-31 3 views
-1

Je voudrais ajouter de nouvelles entrées à la publication Meteor en me basant sur l'entrée déjà trouvée. J'ai sth comme ceci:Ajouter des entrées en fonction de l'entrée trouvée dans la publication Meteor

Meteor.publish("thoughts", function (_id) { 
    Thoughts 
     .find({_id}) 
     .forEach(function(entry) { 
      /* here I want to add new thoughts which should be also published 
       basing on value of field 'classes' from 'entry' object */ 
     }); 
    this.ready(); 
}); 

Comment puis-je le gérer?

// modifier

Ok, encore une fois: mon premier objet ressemble à:

{ 
    "_id" : "XCauSwJ4Rm6Ap3yGr", 
    "classes" : [ 
     "NHfWy7qaygkkt778b" //id of the second object (from the same collection) 
    ], 
    /* other fields */ 
} 

Le second est comme:

{ 
    "_id" : "NHfWy7qaygkkt778b", 
    /* other fields */ 
} 

Je souhaite recevoir les deux eux (comme entrées pararell) connaissant seulement _id du premier.

+1

Vous pouvez vérifier quelque chose comme https://github.com/englue/meteor-publish-composite – chazsolo

Répondre

0
Meteor.publish('thoughts',function(id){ 
    return Thoughts.find({_id:id},{fields:{'classes':1}}); 
}) 

abonnez-vous le même sur le modèle par

Template.tmplName.onCreated(function(){ 
    this.autorun(()=>{ 
     this.subscribe('thoughts',id); // id is the one you are giving to publication; 
    }) 

}) 
+0

D'abord, votre syntaxe est erronée, ce n'est pas objet JS approprié. Deuxièmement, même après avoir ajouté des parenthèses, il y a toujours une erreur: que devraient exactement faire les champs? Et troisièmement, je pense que je ne suis toujours pas bien compris - je l'ai encore édité. –

+0

vous avez besoin de cours seulement je pensais, si vous ne comprenez pas probablement, vous devriez donner un peu plus d'idée sur ce que la sortie que vous recherchez. Un exemple de code de sortie –

+0

J'ai encore une fois édité mon message - J'aimerais obtenir deux résultats, le premier devrait être le premier objet que j'ai collé (avec l'identifiant 'XCauSwJ4Rm6Ap3yGr') et le second - le second objet (avec l'identifiant 'NHfWy7qaygkkt778b'). J'espère que je suis clair maintenant ... –