मौजूदा आदतों को अद्यतन करने के लिए कोड खंड कुछ छोटे सुधारों के साथ ठीक काम करना चाहिए
- त्रुटि में चलते समय हमेशा
return
का उपयोग करें - हमेशा एक स्थिति वापस भेजें। इस मामले में हम 500 . भेजेंगे
- नहीं मिला के लिए जाँच करें और 404 लौटाएँ
- साधारण अद्यतन वस्तु का प्रयोग करें। यह केवल अपडेट ऑब्जेक्ट में निहित फ़ील्ड को अपडेट करेगा
- भिक्षु द्वारा लौटाए गए मोंगोडब दस्तावेज़ में कोई सेव फ़ंक्शन नहीं है, दस्तावेज़ को संग्रह के माध्यम से अद्यतन करने की आवश्यकता है
- जांचें कि अनुरोध में कोई मुख्य भाग है या नहीं और 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
. का उपयोग करके उपरोक्त कोड को और सरल बनाया जा सकता है भिक्षु का कार्य।