API 呼び出しを取得すると、約 4,5 テーブルにインストールする必要があります。これは、エントリに子項目があり、さらに子項目があるためです。最初の挿入から 2 番目の挿入に (親 ID を使用して) データを渡す必要があるため、関数が多すぎます (関数 insertTable1、insertTable1Kids、insertTable1KidsKids など)。
これは良いデザインですか?私は非常に多くの機能を使用していることに悩まされています..これを処理するより良い方法はありますか?
API 呼び出しを取得すると、約 4,5 テーブルにインストールする必要があります。これは、エントリに子項目があり、さらに子項目があるためです。最初の挿入から 2 番目の挿入に (親 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);
};