MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Meteor, One to Many Relationship e aggiungi campo solo alla raccolta lato client in Pubblica?

Personalmente, lo farei in un modo molto diverso, utilizzando l'operatore $in e mantenendo un array di postIds o shareIds nei record.

http://docs.mongodb.org/manual/reference/operator/query/in/

Trovo che le funzioni di pubblicazione funzionino meglio quando sono mantenute semplici, come le seguenti.

Meteor.publish('posts', function() {
    return Posts.find();
});
Meteor.publish('sharedPosts', function(postId) {
    var postRecord = Posts.findOne({_id: postId});
    return Shares.find{{_id: $in: postRecord.shares_array });
});