2013-10-10 70 views
0

如果我有這樣一個模型:可以車把每個循環訪問父模型ID

App.Group = DS.Model.extend({ 
    title: DS.attr('string'), 
    persons : DS.hasMany('App.Person') 
}); 

App.Person = DS.Model.extend({ 
    name : DS.attr('string'), 
    age : DS.attr('object'), 
    group : DS.belongsTo('App.Group') 
}); 

如果我有這樣的固定數據:

App.Group.FIXTURES = [{ 
title : "Group A", 
persons : [10,12] 
},{ 
title: "Group B", 
persons: [13,14] 
}] 

App.Person.FIXTURES = [{ 
name: "Bill", 
age: 24 
},{ 
name: "Ted", 
age: 25 
},{ 
name: "Mr. Excellent", 
age: 30 
},{ 
name: "Mr. Adventures", 
age: 21 
}] 

而且這樣的一個模板:

<script type="text/x-handlebars" data-template-name="Group"> 
    {{title}} 
    {{render person}} 
</script> 

<script type="text/x-handlebars" data-template-name="Person"> 
    {{#each in controller}} 
    {{name}} 
    {{/each}} 
</script> 

因此,現在發生的事情是人員模板顯示人員數組中的所有人員。我怎樣才能讓每一個循環遍歷A組中的人員,而不是在夾具中顯示每個人?這可以在把手中完成嗎?或者這是我需要在路線中指定的東西?

+0

你應該通過餘燼控制器來做到這一點。不與車把。 – user10

回答

1

您可以使用渲染助手的第二個參數傳遞模型的人...控制器

{{render person persons}} 

但你Person.FIXTURES和group.FIXTURES必須有關係的ID

App.Person.FIXTURES = [{ 
    id:10, 
    name: "Bill", 
    age: 24 
}, 
[...] 
App.Group.FIXTURES = [{ 
    id: 1, 
    title : "Group A", 
    persons : [10,12] 
}, 
[...] 
+0

繁榮完美答案。太感謝了 :) – DeliciousMe