Ersetzen Sie die Attribute eines Dokuments in der Veröffentlichungsfunktion
Ich verwende meteor und habe eine Frage zur Veröffentlichungsfunktion (serverseitig)
Meteor.publish('users', function () { .... }
Ich sende jetzt Dokumente an den Browser, die IDs anderer Sammlungen enthalten. Beispielsweise gehört das Aufgabendokument zu einem Projekt
{
title: '....',
projectId: 'KjbJHvJCHTCJGVY234',
...
}
Ich möchte diesem Dokument eine Eigenschaft hinzufügenprojectTitle
so muss ich das projekt nicht auf dem client nachschlagen. Allerdings, wenn ich diese Eigenschaft in der hinzufügenpublish
Funktion wird nicht an den Client gesendet. Das habe ich versucht:
Meteor.publish('tasks', function () {
var tasks = Tasks.find();
tasks.forEach(function (task) {
var project = Projects.findOne({_id: task.projectId});
task.projectTitle = project.title;
});
return tasks;
}
Irgendwelche Vorschläge, wie Sie Dokumente (nicht dauerhaft) innerhalb der Veröffentlichungsfunktion ändern können?