在Ember JS中从REST服务器而不是本地缓存加载数据

时间:2014-02-26 15:03:55

标签: rest ember.js ember-data

我在EmberJS REST适配器场景中有以下模型:

App.Brand = DS.Model.extend({
name: DS.attr('string'),
models: DS.hasMany('model', {async: true})
});

App.Model = DS.Model.extend({
name: DS.attr('string'),
brand: DS.belongsTo('brand')
});

然后我有了获取单一品牌记录的途径:

App.BrandRoute = Ember.Route.extend({
model: function (params) {
    return this.store.find('brand', params.brand_id);
}
});

以及获取所有品牌记录的路线:

App.BrandsIndexRoute = Ember.Route.extend({
model: function () {
    return this.store.findAll('brand');
}
});

我的问题如下:如果我触发App.BrandRoute重新加载页面,Ember会向REST服务器(brands / [brand_id])发出AJAX请求并获取所有数据,包括关系。如果我首先从索引页面开始触发App.BrandsIndexRoute,那么如果我使用应用程序中的链接来触发App.BrandRoute,它不会从REST服务器获取数据,但它使用本地缓存数据,没有关系(这是因为关系仅在其他服务/品牌/ [brand_id]中可用,而不是在显示所有品牌而没有关系的服务/品牌中。当我显示单个时,如何强制Ember从服务器而不是本地缓存加载数据品牌?

提前谢谢!

0 个答案:

没有答案