Sails.js提供了一種通過其Blueprint API填充多對多關係中對象的方法。因此,GET /categorymodel/:categoryid/productscollection
將返回屬於指定類別的所有產品。 Link。通過Sails.js中的關係填充許多對象
對於多對多通過關係,文檔建議通過中間模型使用多個一對多關係來實現所需的組織。這樣做的缺點是無法通過內置的Blueprint API填充對象。 Link。
所以,雖然查詢屬於特定類別的產品,我查詢GET /categorymodel/:categoryid/intermediarycollection
要達到這樣的
[{categoryid: 1, productid: 1, id: 1}, {categoryid: 1, productid: 2, id: 2}, {categoryid: 1, productid: 3, id: 3}, ... n]
這意味着客戶將不得不GET /products/:productid
n次。
如何在發送到客戶端之前處理填充()結果(而不編輯/覆蓋它)以添加產品對象?有沒有更好的方法來做到這一點?
我有一個類似的問題,我想的藍圖組裝它的數據(在我的案件的活動記錄的目的)後發出的事件。就目前而言,我認爲我堅持逐字複製Sails藍圖控制器。 – 2015-04-22 07:12:47
就像旁註一樣,您不必** GET/products /:productid ** n次。 使用WHERE IN子句和一個ID數組(以及適當的限制)來執行** GET/products/**。然後在前端根據結果設置產品。它會爲您節省大量的網絡開銷。 – 2016-10-18 16:44:06