1
我正在嘗試使用Sequelize形成一個查詢來加入並選擇+限制。讓我來說明問題:續集加入並限制
我有一個多對多的關係:Book
- Reader
。讀者可以有很多書,一本書可以有很多讀者。
鑑於Book
的ID,我想翻閱其所有Reader
s。 這是我目前嘗試過的,它有一些問題。首先,分頁不起作用。其次它仍然選擇Book
以及Reader
的所有屬性,當我只需要Reader
(我扔掉了所有的Book
)。
/**
* Get all Readers of a Book.
*
* @param {Number} bookId id of the book
* @param {Number} limit number of readers to retrieve
* @param {Number} offset number of readers to skip
* @return {Promise} contains an array of readers
*/
function getBookReaders(bookId, limit, offset) {
return Book.findOne({
id: bookId,
include: [Reader],
limit: 10,
offset: 30
}).then(function(book) {
return book.readers;
});
}
關於如何正確構建此查詢的任何建議?
仍然抵消了極限/沒有工作,這個API文檔](http://docs.sequelizejs.com/en/latest/api/model/#findalloptions-queryoptions-promisearrayinstance)不要列出嵌套包含模型的限制/偏移選項 –
是的。似乎有一個功能要求,但現在似乎沒有任何方式不這樣做,沒有兩次查詢。但既然你知道引用,你可以使兩個查詢與Promise.all()並行運行。 –
對不起,沒有按照,我怎麼會並行?這是一個多對多的模型,所以我需要連接表來獲取所有'Reader'的ID /我無法直接查詢'Reader'表。 –