2016-03-19 25 views
0

Koleksiyonun Tarihe göre _.groupBy işlevini kullanarak Meteor'da bir koleksiyonu gruplandırmaya çalışıyorum. Pek emin değilim sorundurMeteor Spacebars'ta aşağıdaki yapı üzerinde yineleme nasıl yapılır?

"Mon Dec 07 2015 00:00:00 GMT+0000 (GMT)":[ 
    { 
    "_id":"q9TMi9ZyoRjmddzfY", 
    "title":"New event", 
    "type":"collectif", 
    "product":"passeport", 
    "date":"2015-12-07T00:00:00.000Z", 
    "start":"2015-12-07T08:00:00.000Z", 
    "end":"2015-12-07T09:00:00.000Z", 
    "teachers":[ 

    ], 
    "clients":[ 
     { 
      "clientId":"M4DDCGWGMzX7bJRHa", 
      "manual":"true" 
     } 
    ], 
    "clientLimit":99 
    } 
], 
"Tue Dec 08 2015 00:00:00 GMT+0000 (GMT)":[ 
    { 
    "_id":"Jbchuc58zWDyEqnQZ", 
    "title":"New event", 
    "type":"collectif", 
    "product":"passeport", 
    "date":"2015-12-08T00:00:00.000Z", 
    "start":"2015-12-08T08:30:00.000Z", 
    "end":"2015-12-08T09:30:00.000Z", 
    "teachers":[ 

    ], 
    "clients":[ 

    ], 
    "clientLimit":15 
    }, 
    { 
    "_id":"EsqygwCCPucGhx9nP", 
    "title":"New event", 
    "type":"collectif", 
    "product":"passeport", 
    "date":"2015-12-08T00:00:00.000Z", 
    "start":"2015-12-08T09:30:00.000Z", 
    "end":"2015-12-08T10:30:00.000Z", 
    "teachers":[ 
     "eLExMRh3TT5eYWpki", 
     "wxFjH39M9kuBTv4zN" 
    ], 
    "clients":[ 

    ], 
    "clientLimit":10 
    } 
] 
} 

Nasıl verebilirim çıktı ön uç bu: İşte

çıkarır kod örneğidir. Bir şekilde onu normal dizilere mi yoksa imlecime mi dönüştürmeliyim? Ya da bir koleksiyonun tarih başlıklarına göre gruplandırılmasının başka bir yolu var mıdır?

aşağıdaki gibi çıktı bir şey arıyorum: Herhangi fikirler için

Saturday 21st September 
- Item 1 
- Item 2 

Tuesday 24th September 
- Item 3 

teşekkür ederiz.

cevap

1

Bu bunu yapmak görecektir:

loops.html

{{#each arrayify data}} 
    {{name}} <br> 
    <ul> 
    {{#each value}} 
     <li>ClientLimit: {{this.clientLimit}}</li> 
    {{/each}} 
    </ul> 
{{/each}} 

loops.js

fantastik
Template.registerHelper('arrayify',function(obj){ 
    result = []; 
    for (var key in obj) result.push({name:key,value:obj[key]}); 
    return result; 
    }); 

Template.hello.helpers({ 

data: function() { 
     return { 
     "Mon Dec 07 2015 00:00:00 GMT+0000 (GMT)":[ 
      { 
      "_id":"q9TMi9ZyoRjmddzfY", 
      "title":"New event", 
      "type":"collectif", 
      "product":"passeport", 
      "date":"2015-12-07T00:00:00.000Z", 
      "start":"2015-12-07T08:00:00.000Z", 
      "end":"2015-12-07T09:00:00.000Z", 
      "teachers":[ 

      ], 
      "clients":[ 
       { 
       "clientId":"M4DDCGWGMzX7bJRHa", 
       "manual":"true" 
       } 
      ], 
      "clientLimit":99 
      } 
     ], 
     "Tue Dec 08 2015 00:00:00 GMT+0000 (GMT)":[ 
      { 
      "_id":"Jbchuc58zWDyEqnQZ", 
      "title":"New event", 
      "type":"collectif", 
      "product":"passeport", 
      "date":"2015-12-08T00:00:00.000Z", 
      "start":"2015-12-08T08:30:00.000Z", 
      "end":"2015-12-08T09:30:00.000Z", 
      "teachers":[ 

      ], 
      "clients":[ 

      ], 
      "clientLimit":15 
      }, 
      { 
      "_id":"EsqygwCCPucGhx9nP", 
      "title":"New event", 
      "type":"collectif", 
      "product":"passeport", 
      "date":"2015-12-08T00:00:00.000Z", 
      "start":"2015-12-08T09:30:00.000Z", 
      "end":"2015-12-08T10:30:00.000Z", 
      "teachers":[ 
       "eLExMRh3TT5eYWpki", 
       "wxFjH39M9kuBTv4zN" 
      ], 
      "clients":[ 

      ], 
      "clientLimit":10 
      } 
     ] 
     } 
}); 
+0

! Çok işe yaradığı için çok teşekkürler, sadece neler olduğunu anlamaya çalışıyorum! –

+0

Bu harika! – zbot

+0

çalışmasına sevindim cevap olarak işaretleyebilir misiniz. Teşekkürler! – zbot

İlgili konular