我在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从服务器而不是本地缓存加载数据品牌?
提前谢谢!