PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

एक वादे से मूल्य कैसे वापस करें

thenनेस्टिंग से बचने की कोशिश करें , और वादा श्रृंखला को सपाट रखें। इसके अलावा, आप दो मॉडल मामलों को एक कोड ऑफ़ कोड (DRY) में शामिल कर सकते हैं। अंत में, map का उपयोग करें forEach . के बजाय इसलिए आप वादों की एक श्रृंखला लौटाते हैं, जिसे आप Promise.all . पर फीड कर सकते हैं :

router.post('/devices', function (req, res, next) {
    var promises = loadash.map(req.body.devices, function (device) {
        return Device.forge()
            .where({deviceid: device.deviceid})
            .fetch({columns: ['id', 'mode']})
            .then(function (fetchedDevice) {
                var model = [Model_1, Model_2][fetchedDevice.get('mode')-1];
                if (model) {
                    return model.forge()
                        .where({device_id: fetchedDevice.get('id')})
                        .orderBy('epoch_time', 'DESC')
                        .fetch();
                }
            }).catch(function (err) {
                console.log(err);
            });
       });
    Promise.all(promises).then(function (currentData) {
        currentData = currentData.filter(model => model) // exclude undefined
            .map(model => model.toJSON());
        console.log('Final: ' +currentData); 
    });
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL में डिफ़ॉल्ट मान के रूप में UTC में वर्तमान समय का उपयोग करना

  2. मान त्रुटि Psycopg2 का उपयोग कर पोस्टग्रेज तालिका में डेटा आयात करते समय

  3. PostgreSQL फ़ंक्शन मौजूद नहीं है

  4. पोस्टग्रेज UPDATE to_tsvector सभी पंक्तियों को समान मान पर अपडेट कर रहा है

  5. Homebrew के माध्यम से मैक ओएस एक्स पर पोस्टग्रेएसक्यूएल सर्वर कैसे शुरू करें