我所拥有的是记录ID列表,例如[1, 20, 20]
。
查询每个项目并删除它们似乎效率低下。
store.findRecord('post', 1).then(function(post) {
post.deleteRecord();
post.save(); // => DELETE to /posts/1
});
我想同时删除多条记录。使用Ember数据的正确方法是什么?
答案 0 :(得分:2)
主要问题是没有明确定义(或传统)的方式通过REST语义进行批量删除。典型的DELETE HTTP方法针对标识单个资源的URL。正如Ebrahim在评论中提到的那样,批量删除的后端服务可能是更好的方法。
成功完成批量请求后,下一个问题是从Ember数据存储中删除这些已删除的项目。一个简单(但效率低下)的解决方案是通过store.unloadAll(modelname)