2016-07-22 13 views
2

MeteorとmongoDBで作業していましたが、問題が発生しました。スキーマにハイフネーションされた名前があり、その値をmapから取得できません。これを回避するには?mongoDBのフィールドがハイフネーションされたマップ関数を返す方法

マイMongoDBのコレクションは、名前のフィールドがあります。

"loopback-mode" : "no-loopback", 

マイクエリビーイング:

db.collection.find({templateName:"someTemplate"},{"loopback-mode":1,_id:0}).map(function(c) {return c.loopback-mode;})[0]; 

c.loopback-modeは、問題の原因となっているようです。

私はエラーが言ってます:

SyntaxError: Unexpected token - 

私はc[loopback-mode], c["loopback-mode"], c."loopback-mode"など、 を試みたが、ノー成功にしました。これを行う正しい方法は何ですか?

答えて

3

....map(function(c) { return c['loopback-mode']; })... 

私はちょうどそれをテストする必要があります移動するための方法 - あなたはすでに、再びそれならば試してみてくださいことをテストしたことに言及したように

Test

以下のGIFを見ますまだ動作しない場合はエラーを共有してください(ある場合)。最初の構文エラーは確実に消されるはずです。

+0

ありがとうございます!それは実際に私のためにも働いた。私はどこかでタイプミスがあり、それをぶち壊したと思います。 – blueren

関連する問題