異なるルートに基づいて、同じコレクションのサブセットを公開および購読したいと考えています。これが私が持っているものです
/server/publish.js 内
Meteor.publish("questions", function() {
return Questions.find({});
});
Meteor.publish("questionSummaryByUser", function(userId) {
var q = Questions.find({userId : userId});
return q;
});
/client/main.js 内
Deps.autorun(function() {
Meteor.subscribe("questions");
});
Deps.autorun(function () {
Meteor.subscribe("questionSummaryByUser", Session.get("selectedUserId"));
});
ルーター パッケージ ( https://github.com/tmeasday/meteor-router ) を使用しています。アプリを機能させたいのは、「/questions」に移動したときに、すべてのユーザーによるすべての質問を一覧表示したいのと、「/users/:user_id/questions」にアクセスしたときに、特定の質問のみを一覧表示したい場合です。ユーザー。このために、「/users/:user_id/questions」ルートをセットアップして、「selectedUserId」セッションでユーザー ID を設定しました (「questionSummaryByUser」公開メソッドでも使用しています)。
ただし、「/users/:user_id/questions」で質問のリストを見ると、user_id に関係なくすべての質問が表示されます。
コレクションがクライアント側でマージされていることをここで読みましたが、上記のシナリオの解決策はまだわかりませんでした。
私はMeteorを始めたばかりなので、その内外を知らないことに注意してください.
前もって感謝します。