2012-11-20 51 views
3

在我的余烬应用程序我有一个模型:灰烬数据呈现的hasMany

App.Schedule = DS.Model.extend({ 
    manager:DS.belongsTo('App.Manager', { embedded: true }), 
    entries:DS.hasMany('App.Reservation', { embedded: true }) 
}); 
App.Reservation = DS.Model.extend({ 
    name:DS.attr('string') 
}); 

和handelbars查看:

{{#each schedule in controller}} 
<td> 
    {{#each reservation in schedule.entries)}} 
    <div>{{reservation.name}}</div> 
    {{/each}} 
</td> 
{{/each}} 

但这一观点得到了a've例外

Expecting 'ID', got 'undefined' 

此解决方法有效,但我知道这是错误的方法。

{{#each reservation in schedule._data.hasMany.entries}} 

任何想法?

编辑。

后麦克阿斯基回答。 我的JSON,从后端返回。

{ 
    "schedules": [ 
    { 
     "id": "476a3881-4fe8-42f5-8bdb-650d38f911e8",   
     "entries": [ 
     {    
      "name": "test1", 
      "begin": "2012-11-22T10:00:00+06:00", 
      "end": "2012-11-22T11:00:00+06:00", 
      "id": "71c6da83-8ae2-4210-90f8-e65b06f819d7" 
     }, 
     {    
      "name": "test2", 
      "begin": "2012-11-22T12:00:00+06:00", 
      "end": "2012-11-22T14:00:00+06:00", 
      "id": "d234c8c0-66f5-4e98-b921-4472b39a98f7" 
     } 
     ] 
    }, 
    { 
     "id": "8d9b1539-8a1f-4a5d-acfc-5918e61e3990",   
     "entries": [] 
    }, 
    { 
     "id": "a279d9a5-ea88-4012-8094-8a30125fd32b",   
     "entries": [] 
    } 
    ] 
} 
+1

我遇到同样的问题,除了递归关系(如树结构)。我一直在与Embers hasMany交战一段时间,但没有成功。 – Luke

回答

0

你确保你在reservations JSON对象的id财产?

即使关系被嵌入,您也应该拥有它们。

+0

我编辑了我的问题(包括JSON数据示例)。有身份证物业。 – griZZZly8