MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

Node.js (एक्सप्रेस), कोणीय और MongoDB का उपयोग करके PUT अनुरोध में समस्या

मौजूदा आदतों को अद्यतन करने के लिए कोड खंड कुछ छोटे सुधारों के साथ ठीक काम करना चाहिए

  1. त्रुटि में चलते समय हमेशा return का उपयोग करें
  2. हमेशा एक स्थिति वापस भेजें। इस मामले में हम 500
  3. . भेजेंगे
  4. नहीं मिला के लिए जाँच करें और 404 लौटाएँ
  5. साधारण अद्यतन वस्तु का प्रयोग करें। यह केवल अपडेट ऑब्जेक्ट में निहित फ़ील्ड को अपडेट करेगा
  6. भिक्षु द्वारा लौटाए गए मोंगोडब दस्तावेज़ में कोई सेव फ़ंक्शन नहीं है, दस्तावेज़ को संग्रह के माध्यम से अद्यतन करने की आवश्यकता है
  7. जांचें कि अनुरोध में कोई मुख्य भाग है या नहीं और 400 - खराब अनुरोध भेजें

आप ऑब्जेक्ट आईडी को हेक्स या ऑब्जेक्ट आईडी के रूप में findById . पर पास कर सकते हैं जैसा कि मॉन्क डॉक्स में कहा गया है ।

router.put('/api/habits/:habit_id', function(req, rest){
    var db = req.db;
    var collection = db.get('habits');

    if(!req.body) { return res.send(400); } // 6

    collection.findById(req.params.habit_id, function(e,data){  
        if(e) { return res.send(500, e); } // 1, 2

        if(!data) { return res.send(404); } // 3

        var update = { title : req.body.title, count : req.body.count }; // 4

        collection.updateById(req.params.habit_id, update, function(err) { // 5
            if(err) {
                return res.send(500, err);
            }

            res.json(data);
        });
    });
});

findAndModify . का उपयोग करके उपरोक्त कोड को और सरल बनाया जा सकता है भिक्षु का कार्य।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. $not . के साथ MongoDB भू-स्थानिक क्वेरी

  2. मावेन स्पिगोट के साथ नहीं चल रहा है

  3. $ लुकअप के लिए मोंगोडब कुल तर्क स्ट्रिंग होना चाहिए

  4. सी # में मोंगोडीबी सरणी के रूप में जेसन स्ट्रिंग स्टोर करें

  5. नेवला का उपयोग करके डेटा को बचाने के लिए क्रॉसस्टैब-क्वेरी या वर्चुअल