我的路由器上有这个。js:
this.resource('campaigns', {path:'/campaigns'}, function() {
this.route('index', {path: '/'});
this.route('group', {path: '/*campaign_group_id'});
});
因此,这是一个名为活动的路由,以及两个嵌套路由:索引和组。
当浏览器位于组路线上时,我需要在活动路线/控制器上从组路线访问模型。
但我无法访问它。我总是得到它在campaigns.js路线上的模型。
如果在其控制器上从campaign.group
路由设置模型,则应该能够使用controllerFor
从campaigns
路由,类似
// routes/campaigns.js
this.controllerFor('campaigns.group').get('your-prop')
您也可以从group
路由发送一个操作,并在父campaigns
路由中处理它,并沿着模型发送。这可能更符合Ember2.0惯例。
顺便说一句,如果你正在使用Ember CLI(你应该这样做),你应该试着去掉this.resource
,把所有的路由/模板/控制器都放在pod中。