缓存`this.get(“store”)。findAll(“post”)`结果集

时间:2013-10-20 10:42:18

标签: ember.js ember-data

此路由会在每次转换到post.index时发送服务器请求。包括页面重新加载,导航和link-to 'post.index'

当该路线转换到第一次时,我真的需要加载所有帖子一次。缓存结果集的最佳方法是什么?

App.PostIndexRoute = Em.Route.extend({
  model: function() {
    return this.get("store").findAll("post")
  }
});

我正在使用Ember 1.0和Ember Data 1.0.beta3

1 个答案:

答案 0 :(得分:2)

在你的应用程序路由的model / setupController中,你可以预取:

ApplicationRoute = Em.Route.extend({
  setupController: function(controller, model){
    this._super(controller, model);
    this.store.find("post");
  }
});

在您的帖子索引路线中,您可以这样做:

App.PostIndexRoute = Em.Route.extend({
  model: function() {
    return this.store.all("post")
  }
});