MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Sự cố với yêu cầu PUT sử dụng Node.js (express), Angular và MongoDB

Đoạn mã để cập nhật các thói quen hiện có sẽ hoạt động tốt với một số chỉnh sửa nhỏ

  1. Khi chạy bị lỗi, hãy luôn sử dụng return
  2. Luôn gửi lại trạng thái. Trong trường hợp này, chúng tôi sẽ gửi 500
  3. Kiểm tra không tìm thấy và trả lại 404
  4. Sử dụng đối tượng cập nhật đơn giản. Thao tác này sẽ chỉ cập nhật các trường có trong đối tượng cập nhật
  5. Tài liệu mongodb do nhà sư trả về không có chức năng lưu, tài liệu này cần được cập nhật qua bộ sưu tập
  6. Kiểm tra xem yêu cầu có nội dung hay không và gửi 400 - Yêu cầu không hợp lệ

Bạn có thể chuyển một id đối tượng dưới dạng hex hoặc ObjectId vào findById như đã nêu trong tài liệu Monk .

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);
        });
    });
});

Đoạn mã trên có thể được đơn giản hóa hơn nữa bằng cách sử dụng findAndModify chức năng của Monk.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Lấy lại mẫu dữ liệu chuỗi thời gian sử dụng Javascript và Mongodb

  2. Cách thực hiện truy vấn với cài đặt múi giờ trong Mongodb

  3. Mongodb:không kết nối được với máy chủ trong lần kết nối đầu tiên

  4. làm thế nào để đếm php mongodb nhúng?

  5. Cách upert với mongodb-java-driver