我有router
:
// app/router.js
Router.map(function() {
this.route('battle', function(){
this.route('combats');
})
});
在战斗路线中,我可以使用以下方式轻松访问战斗模型:
// app/routes/battle/combat.js
this.modelFor('battle');
但是如果我想在战斗模板中访问这个模型,事情也会变得复杂:
// app/templates/battle/combats.hbs
<h1>Combats for Battle {{<how to access to the battle>.title}}</h1>
{{#each model as |combat|}}
{{combat.date}}
{{/each}}
我已经从战斗路线:
解决了这个发送属性到战斗控制器// app/routes/battle/combat.js
setupController: function(controller, model) {
controller.set('content', model);
controller.set('battle', this.modelFor('battle'));
}
但是我不知道它是否是正确的方法,在我看来它看起来太多间接,就像你必须做一个很长的解决方法才能在模板中使这个属性可用。