ember-data - 加载菜单数据 - 最佳方法

时间:2013-10-30 10:41:21

标签: ember.js ember-data

我有一个在应用程序路径上加载的类别列表:

ApplicationRoute = Em.Route.extend({
    model: function() {
        return Em.RSVP.hash({
            collections: this.store.find('collection'),
            categories: this.store.find('category'),
            links: this.store.find('link')
        });
    }
});

这会按预期触发服务器上的类别索引操作。我这样做是因为我需要加载菜单的类别列表。

我也有类别路线:

Router.map(function() {
    this.route('category', { path: '/categories/:category_id' });
});


CategoryRoute = Em.Route.extend({
    model: function(params) {
        this.store.find('category', params.category_id);
    }
});

由于商店中已有类别列表,因此没有对服务器的请求。但是,我想在这里展示更详细的信息。我想向服务器的show动作发送请求。

我可能没想过“蠢货”,但在我看来,我不得不以某种方式强制路线中的服务器请求,或者为菜单类别创建单独的模型。

如何用ember-data来解决这个问题?

备注: ember.js-1.1.2和 ember-data-1.0.0.beta.3

1 个答案:

答案 0 :(得分:1)

我最终使用了单独的CategoriesList模型。不过,这感觉不太理想。