如何迭代 Meteor Spacebars 中的以下结构?

How to iterate over the following structure in Meteor Spacebars?

我正在尝试使用 Underscore 的 _.groupBy 函数在 Meteor 中按日期对 collection 进行分组。

这是输出的代码示例:

"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
  }
]
}

问题是,我不太确定如何在 front-end 中输出这些内容。我是否必须以某种方式将其转换为普通数组或游标?或者是否有另一种方法可以按日期标题对 collection 进行分组?

我希望输出如下内容:

Saturday 21st September
- Item 1
- Item 2

Tuesday 24th September
- Item 3

感谢任何想法。

我会这样做:

loops.html

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

loops.js

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
          }
        ]
      }
});