2

Meteor の更新で何かがうまくいきません。

私が実行した場合:

Countries.insert({name: 'China'});

ご想像のとおり、Countries コレクションに「中国」という名前の新しいドキュメントを取得しました。

しかし、次に実行すると:

Countries.update({name: 'China'}, {population: '1 billion'});

ドキュメントには人口プロパティがありますが、名前プロパティは失われています。それは間違いなく同じドキュメントです - 同じIDです。

私はこの構文に従っていると思いました:

collection.update(selector, modifier, [options], [callback])

Meteor Docs からそのまま。

update コマンドで (セレクタではなく) ドキュメントの id 文字列を使用して更新を試みましたが、同じことが起こります。

私は何を間違っていますか?

4

1 に答える 1

3

これは役に立ちますか

Countries.update({ name: 'China' } , { $set : { population: '1 billion' }});

ドキュメントに key:value がまだ存在しない場合は、これが追加されます。また、以下を使用して複数のドキュメントに値を追加することに成功しました。

Countries.update({ continent: 'Asia' } , { $set : { food: 'delicious' } } , { multi : true } );

これにより、アジア大陸のすべての国においしい食べ物が追加されます。

于 2012-05-30T23:57:58.040 に答える