首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >REST适配器模型重新加载

REST适配器模型重新加载
EN

Stack Overflow用户
提问于 2013-10-16 17:17:20
回答 1查看 434关注 0票数 0

我有一些困难重新加载我的馀烬RESTful模型,我不知道为什么。从概念上讲,我想做的是.http://jsbin.com/EfuBiNo/4/edit

该代码与我的代码之间唯一的区别是,我使用的不是FixtureAdapter,而是RESTAdapter。不幸的是,重新加载我的RESTful模型会导致DS.RecordArray中的记录数增加一倍。因此,您可以看到控制台正在记录(每次重新加载) RecordArray中有两条记录。

当我用我的RestAdapter运行这个程序时,计数就会变成2...4...8...16....etc。所以我不知道为什么每次都会翻一番,但是如果有人对为什么--或者更好的,重新载入这些记录的方式--有任何见解的话,我会非常感激的。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-16 19:28:20

如果在加载记录之后需要刷新记录集合,则可以执行以下操作:

代码语言:javascript
复制
App.ThingsRoute = Ember.Route.extend({
  model: function () {
    return this.store.find('thing');
  },

  actions: {
    refreshThings: function () {
      var controller = this.controller;
      this.store.find('thing').then(function (things) {
        controller.set('content', things);
      });
    }
  }
});

这将只需再次获取所有thing,并在承诺解决时将记录数组设置为控制器上的内容。如果返回的项目已经在您的商店中编目( in已经存在),那么您将不会有大量重复的记录挂在周围,只会更新一些东西。如果有以前不知道的新记录,那么现在就可以在ThingsController上得到这些记录了。

如果您正在执行某种类型的查询,这也很有用:

代码语言:javascript
复制
this.store.find('thing', {color: 'red'})
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19409676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档