2016-06-16 111 views
1

在灰燼的數據有:燼JS查找記錄由多個ID

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

將在返回/書籍/ 1

現在我想返回ID這樣的列表作爲/書籍/ 1,2,3,4

我該怎麼辦?我也嘗試

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

但有2個問題是:
1.它歸還圖書/ 1%2C2%2C3%2C4:逗號是解碼的HTML字符,所以不工作
2.遠因爲我知道findQuery只用於找到與ID的單個記錄,而不是多個記錄 https://guides.emberjs.com/v2.3.0/models/finding-records/

回答

2

我想你想找到給定ID的所有記錄。對於這個有一個查詢對象,你可以通過過濾器

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

這會打擊服務器/書籍?篩選[book_ids] = 1,2,3,4,然後在你的服務器端,你可以找到所有記錄這是在這個數組1,2,3,4裏面,像SELECT * BOOKS WHERE ID IN(1,2,3,4) - 不確定你在服務器端使用什麼。

reloed:true是可選的 - 這是您每次訪問路線時都要強制重新加載數據的原因。這在部分查詢多個記錄中進行了解釋

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