我想知道是否可以以在单个请求中加载异步 hasMany 关系的方式配置 Ember 数据。
给定以下模型:
// models/post.js
export default DS.Model.extend({
comments: DS.hasMany()
});
// models/comments.js
export default DS.Model.extend({
...
});
当我在模板或 Controller 中的某处引用属性 comments
时,它将在单独的请求中逐一获取帖子的相关评论。这会导致许多请求,我想将这些请求合并到一个请求中,并在 id-property 上进行过滤。
最佳答案
您必须为所需的行为启用一个名为 coalesceFindRequests: true
的开关,您可以像这样在应用程序适配器中设置它:
// adapters/application.js
import DS from 'ember-data';
export default DS.RESTAdapter.extend({
coalesceFindRequests: true,
});
现在 Ember 将通过 ..api/comments?ids[]=1&ids[]=2
获取已知 ID 的多条记录
我想对于 JSONAdapter 也是一样的。
关于ember.js - Ember 数据批量获取异步有很多关系记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49917485/