sql >> データベース >  >> NoSQL >> MongoDB

コレクションを取得し、応答に値を追加します

    公開機能を実装する方法は2つあります。

    1. カーソル(またはカーソルの配列)を返すことによって
    2. this.added()、this.changed()、this.removed()を使用する。

    方法2でのみ、返されたドキュメントを変更できます。

    Meteorのドキュメントこちら を参照してください。 。ただし、提供されているサンプルコードは複雑に見える可能性があるため、別のコードを次に示します。

    // server: publish the rooms collection
    Meteor.publish("rooms", function () {
      return Rooms.find({});
    });
    

    と同等です:

    // server: publish the rooms collection
    Meteor.publish("rooms", function () {
      var self = this;
      var handle = Rooms.find({}).observeChanges({
        added:   function(id, fields) { self.added("rooms", id, fields); },
        changed: function(id, fields) { self.changed("rooms", id, fields); },
        removed: function(id)         { self.added("rooms", id); },
        }
      });
      self.ready();
      self.onStop(function () { handle.stop(); });
    });
    

    2番目のサンプルでは、​​次のように、公開する前に「field」パラメーターを変更できます。

    added: function(id, fields) { 
        fields.newField = 12;
        self.added("rooms", id, fields); 
    },
    

    出典:この投稿



    1. MongoDB:不明なキーを持つオブジェクトでフィールド値が指定されたドキュメントを検索します

    2. mongodbオープン接続の問題

    3. MongoDBから重複を削除する

    4. JavaコードへのMongoDBAggregationコマンド