我很高兴可以使用类似的东西将多个模型加载到路线中(如果有更好的方法,可以随意纠正!):
model: function() {
var self = this;
return Ember.RSVP.hash({
foos: self.store.find('foos'),
bars: self.store.find('bars'),
});
但是,如果模型钩子是由传递的模型设置的,例如,链接到帮助器,我应该如何添加其他模型?
谢谢!
修改
所以在我的情况下,我有一个单位和目标,这是相关的。 单位可以有很多目标 - 尽管它是一种单向关系。
在我的单元路线中,我点击单位,其链接到 units / unit:ID 路线。因此单位被设置为模型,但我也希望将所有目标加载到模型中,以便我可以选择并将其添加到单元
答案 0 :(得分:1)
并非页面中的所有内容都必须位于路线model
中。例如,您可能有一个包含Route
对象的Unit
。要获取所有Objective
个对象的列表,您可以向controller
添加一个简单的属性:
allObjectives: function() {
return this.store.find('objective');
}.property()
然后您的模板可以照常渲染模型:
<div>Unit name: {{model.name}}</div>
<div>All objectives:
<ul>
{{#each objective in allObjectives}}
<li>{{objective.name}}</li>
{{/each}}
</ul>