[英]How do you save multiple records in SailsJS in one action?
我想知道在對多個記錄進行更改(尤其是添加和刪除)的操作中保存多個記錄的最佳實踐是什么? 最終目標是使一個功能可以訪問操作中所有更改的數據。 目前,我正在嵌套存儲,以便使最里面的存儲能夠訪問所有更新記錄中的數據。 這是我如何保存的示例:
record1.save(function (error, firstRecord) {
record2.save(function (erro, secondRecord) {
record3.save(function (err, thirdRecord) {
res.send({recordOne: firstRecord, recordTwo: secondRecord, recordThree: thirdRecord});
});
});
});
使用保存的這種結構,recordOne,recordTwo和recordThree在服務器上顯示期望值。 但是,檢查localhost / 1337 / modelName會顯示模型未正確更新且數據不正確。
您可以為此使用內置的Promise引擎Bluebird 。
Promise.then(function() { return [record1.save(),record2.save(),record3.save()]; }).spread(function(record1_saved,record2_saved,record3_saved){ res.send({recordOne: record1_saved, recordTwo: record2_saved, recordThree: record3_saved}); req.namespamce = this; }).catch(function(err){ res.badRequest({ error: err.message }); req.namespamce = this; });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.