我有一个应用程序路由,它需要一个应用程序 ID,从这里我转到 app/:app_id/settings,这将打开一个 Twitter Bootstrap 模式,从一个单独的模板,从这里我希望能够做这样的事情更改应用程序名称和其他类似内容,但我似乎无法访问该模型。我假设因为我正在嵌套路由,所以我可以访问当前的应用程序模型,但我没有。我也无权访问父路由中的参数,所以不确定该怎么做。我在下面包含了相关的(我认为)代码。
WEM.Router.map(function(){
this.resource( 'apps', { path: '/' }, function(){
this.resource( 'app', { path: 'app/:app_id'}, function(){
this.resource( 'settings', { path: 'settings' } );
this.resource( 'error', { path: 'error/:error_id' } );
});
});
});
// Routes
WEM.AppsRoute = Ember.Route.extend({
model: function(){
return WEM.App.find();
}
});
WEM.SettingsRoute = Ember.Route.extend({
model: function( params ){
console.log( WEM.App.find( params.app_id ).get( 'id' ) );
return WEM.App.find( params.app_id );
}
});
最佳答案
我想将你的 SettingsRoute
的模型 Hook 更改为
model: function(params) {
return this.modelFor("app");
}
可能会有帮助。
关于ember.js - 从父路由继承模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15815774/