如何在Ember Data中的一个请求中获取所有数据?

时间:2014-12-29 11:26:12

标签: rest ember.js ember-data

我正在使用ember 1.8.1,ember data 1.0.0-beta 11。 我有两种类型的名字A和B,关系就像是

A = DS.Model.extend({
   bs: DS.hasMany('B', {async: true})
});
B = DS.Model.extend({
   a: DS.belongsTo('A')
});

根据这篇文章: http://thau.me/2014/09/ember-data-mastering-async-relationships/

当我尝试在模板中的a.model中获取bs时,如下所示: {{#each b in model.bs}}

ember的RESTAdapter将发送如下的http请求: URL / BS的ID [] = 1&安培; IDS [] = 2

但它会发送几个这样的请求: URL / B / 1 URL / B / 2

新版本中ember数据的行为是否已更改?如何将请求合并为1个请求?

1 个答案:

答案 0 :(得分:0)

此行为在Ember Data beta-9中已更改为选择加入。 您可以通过设置适配器的coalesceFindRequests属性来激活它。

   DS.RESTAdapter.reopen({
     coalesceFindRequests: true
   });

更详细的说明可以在beta-9的官方博客条目中找到: http://emberjs.com/blog/2014/08/18/ember-data-1-0-beta-9-released.html#toc_coalescing-find-requests