当我收到 API 调用时,我必须安装到大约 4,5 个表,因为一个条目具有子项,而子项又具有子项。由于我必须将数据从第一个插入传递到第二个插入(使用父 ID),我最终有太多函数(如函数 insertTable1、insertTable1Kids、insertTable1KidsKids)等等。
这是好设计吗?我正在使用这么多功能让我很困扰。有没有更好的方法来处理这个问题?
当我收到 API 调用时,我必须安装到大约 4,5 个表,因为一个条目具有子项,而子项又具有子项。由于我必须将数据从第一个插入传递到第二个插入(使用父 ID),我最终有太多函数(如函数 insertTable1、insertTable1Kids、insertTable1KidsKids)等等。
这是好设计吗?我正在使用这么多功能让我很困扰。有没有更好的方法来处理这个问题?
使用闭包和async
模块。
npm install async
你的代码看起来像这样......
var async = require('async');
exports.your_route = function(req, res) {
var parent_id = req.query.parent_id;
var calls = [];
calls.push(function(callback) {
// insertTable1 - use parent_id
callback(false);
});
calls.push(function(callback) {
// insertTable1Kids - use parent_id
callback(false);
});
calls.push(function(callback) {
// insertTable1KidsKids - use parent_id
callback(false);
});
calls.push(function(callback) {
// return response
res.send("tabels for parent ID: "+parent_id+" created);
callback(false);
});
async.series(calls);
};