2017-08-08 13 views
1

コレクション(カテゴリ)があり、各ドキュメントにはオブジェクト(製品)の配列である「製品」フィールドがあります。各製品には、「名前」フィールドと「開始コスト」フィールドがあります。各カテゴリ名を表示することはできますが、すべてのカテゴリ内にすべての製品名を表示する方法はわかりません。コレクション内の各配列要素の名前フィールドを表示

HTML:

<template name='categoriesList'> 
    <ul class='category-grid'> 
     {{ #each categories }} 
      <li>{{ name }}</li> 
      <!-- Display every product's name --> 
     {{/each}} 
    </ul> 
</template> 

JS:

Template.categoriesList.helpers({ 
    categories() { 
     return Categories.find({}); 
    }, 
}); 

スキーマ:

{ 
    "_id" : "test", 
    "name" : "TestNAME", 
    "createdAt" : ISODate("2017-08-08T18:03:09.508Z"), 
    "products" : [ 
    { "name" : "testProduct", "startingCost" : 100 }, 
    { "name" : "test2", "startingCost" : 200 } 
    ] 
} 

答えて

3

ちょうど別{{ #each }}

<template name='categoriesList'> 
    <ul class='category-grid'> 
     {{ #each category in categories }} 
      <li>{{ category.name }}</li> 
      <!-- Display every product's name --> 
      <ul> 
       {{ #each product in category.products }} 
       <li>{{ product.name }}: ${{ product.startingCost }}</li> 
       {{/each}} 
      </ul> 
     {{/each}} 
    </ul> 
</template> 
0を行うことができるはず

each productsまたはeach product in productsの構文が好きな場合は、ネストするときは、名前空間を好むのが間違いない。

+1

私はある時点でこれを試したと思うし、うまくいきませんでした(私はいくつかのシンプルなタイプミスやスペルミスがあったと確信しています)。しかしそれは今働く。 –

+0

よろしくお願いします。答えを受け入れることによって私に偽のインターネットポイントを贈りたいですか? –

関連する問題