ember.js - 从父路由继承模型

标签 ember.js

我有一个应用程序路由,它需要一个应用程序 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/

相关文章:

javascript - Ember.js 嵌套模型

ember.js - ArrayController和ArrayProxy的目的是什么?

ember.js - Ember-CLI 'Ember Update' 命令

javascript - Ember 和外部 js 脚本

javascript - 使用 Ember.js 临时将 CSS 类添加到 DOM 元素

rest - 在将模型分配给模板时,无法在 Ember JS setupController Hook 中捕获 404 错误(找不到资源)

javascript - Ember.js:在路由中嵌套资源

twitter-bootstrap - 当将值作为参数传递给 addin 时将值传递给 ember.js 组件(例如 ember-bootstrap-modals-manager)

javascript - Ember 路由指定不同的根 url

java - 我的远程服务器 (Amazon EC2) 是否需要运行 2 个不同的服务器才能运行 EmberJS 和 Spring Boot?