ember js通过多个ID查找记录

时间:2016-06-16 18:21:35

标签: ember.js

在Ember数据中我们有:

this.store.findQuery('book', 1);

将以 / books / 1

返回

现在我想返回一个id列表,例如 / books / 1,2,3,4

我该怎么办?我也试试

this.store.findQuery('book','1,2,3,4');

但这有两个问题:
 1.它返还书籍/ 1%2C2%2C3%2C4:逗号解码为html字符,所以不工作
 2.据我所知,findQuery仅用于查找带有id的单个记录,而不是用于多个记录 https://guides.emberjs.com/v2.3.0/models/finding-records/

1 个答案:

答案 0 :(得分:2)

我想你想找到具有给定ID的所有记录。为此,有一个查询对象,您可以传递过滤器

this.store.query('book', {reload:true, filter: {book_ids: '1,2,3,4'} })

这将命中server / books?filter [book_ids] = 1,2,3,4然后在服务器端你可以找到这个数组1,2,3,4内的所有记录,如SELECT * ID为IN(1,2,3,4)的书籍 - 不确定你在服务器端使用的是什么。

reloed:true是可选的 - 如果你想在每次访问路线时强制重新加载数据。这将在查询多个记录部分中进行解释

https://guides.emberjs.com/v2.5.0/models/finding-records/#toc_querying-for-multiple-records