2016-05-01 7 views
0

いいえ、私は流星プロジェクトのためのMongoDBのコレクションを持っています。メテオ:mongodbから配列サブセットを返す方法

_id: "RxBqDLxxPG89ngp9d", 
name: "deck of cards", 
deck: [ 
    { 
    suit: "spades", 
    value: "ace", 
    }, 
    { 
    suit: "spades", 
    value: "king", 
    }, 
    { 
    suit: "spades", 
    value: "queen", 
    }, 
    { 
    suit: "hearts", 
    value: "ace", 
    }, 
    { 
    suit: "hearts", 
    value: "king", 
    }, 
    { 
    suit: "hearts", 
    value: "queen", 
    } 
] 

(1私は全体のデッキをしたと仮定することができますが、:ドキュメントはので、私はちょうど渡って私のポイントを取得するには、コレクション内のドキュメントの例に置くつもりですここに投稿するには長すぎます例の目的には関係ありません)。 そして、ページ上にあるすべての名前を取得したいのであれば、私がどのようなテンプレートを使っていても、ヘルパーを作成しなければならないということを知っています。

ヘルパーのHTMLで
"displayCards": function(){ return deckOfCards.find().deck; } 

そして:戻ります

{{#each displayCards}} 
    <div class="card">{{value}} of {{suit}}</div> 
{{/each}} 

:私は最終的に私の質問に取得する場所

ace of spades 
king of spades 
queen of spades 
ace of hearts 
king of hearts 
queen of hearts 

をので、ここでは、次のとおりです。
私がしたいですカードの各スーツの周りにスーツのクラスとdivを置く。これを行うには、スーツがハートやスペードなどと等しい要素の配列を返すか、配列13の部分を返すことができるようにする必要があります。私が書いたものだけで行く)カードを一度に。これを行う方法はありますか?

+0

あなたの質問は分かりません。ここで何をしようとしているのか、もっと具体的に教えてください。 – styvane

+0

最終的に?私はあるスーツにスタイルを変更できるようにしたいが、他のスーツにはスタイルを変更したくない。今のところ私は{{#each}}すると配列のすべての要素を引き出すので、異なる容器に異なるスーツを入れる方法はありません。私は、一度に1つのサブセットしか取得できないようにしたい。 –

+0

私はまた明らかにする必要があります。私はdeckOfCards.find({}、{デッキ:{$スライス:3}})を実行するとき、私は実行しているプログラムでは、各ドキュメントに複数の配列があるので、私が望むように、しかしそれはまた他のすべてを返します、そして、私はこの1つの配列を必要とします –

答えて

0

これは、複数のドキュメントに対して操作を実行する方法です。

あなたのヘルパーコード: -

"displayCards": function(){ 
    return deckOfCards.find() 
} 

HTMLコード: -

{{#each displayCards}} 
    {{#each deck}} 
      <div class="card">{{value}} of {{suit}}</div> 
    {{/each}} 
{{/each}} 

だから、あなただけの二#eachループにあなたの机に合格する必要があります。それがあなたがそれを行う方法です。

関連する問題