2012-09-13 8 views
5

私は流星で_idでオブジェクトを見つけようとしています。流星:_idでコレクションからオブジェクトを探す

ここに私がしようとしたものです:私は場合

:f1790caa-7a10-4af5-A01C-e80bb2c2fd55結果をお探し

Meteor.publish("gifts", function(gid) { 
    console.log("Looking for "+ gid); 
    var gifts = Gifts.find({_id: gid}).fetch(); 
    console.log("Result: " + gifts); 
    return gifts; 
}); 

これが出力されますクエリを取り出します。

Meteor.publish("gifts", function(gid) { 
    console.log("Looking for "+ gid); 
    var gifts = Gifts.find().fetch()[1]; 
    console.log("Result:" + gifts._id); 
    return gifts; 
}); 

オブジェクトは配列内にあり、_idは上記と同じです。

f1790caa-7a10-4af5-A01C-e80bb2c2fd55結果を探して: f1790caa-7a10-4af5-A01C-e80bb2c2fd55

また、私はモンゴコンソールで検索を実行した場合、私は見つけますオブジェクト:

> db.gifts.find({_id: 'f1790caa-7a10-4af5-a01c-e80bb2c2fd55'}); 
{ "name" : "A new gift", "_id" : "f1790caa-7a10-4af5-a01c-e80bb2c2fd55" } 

私は間違っていますか?

答えて

5

どこから文書を挿入しましたか? MongoDBは文字列とobjectIdを別々に扱いますが、現在ObjectIdsを正しく処理していないMeteorのバグがあるようです。

https://github.com/meteor/meteor/issues/61

+1

ありがとうございます。隕石が初期段階であっても、これが基本的なものではないことに驚いている。 –

+0

流星バージョン1.4では、(同じ落とし穴で走った)動作がまだ観察される。 @shelmanがリンクしている問題は、mongoコンソールの代わりに 'meteor shell'を使うことを推奨しています。 – zliw

関連する問題