Tôi cần cập nhật một số tài liệu bằng cách cung cấp chúng trong phần nội dung. Tôi không thể truy vấn chúng, chúng phải được cung cấp.Cập nhật nhiều tài liệu bằng cách cung cấp tài liệu trong cơ thể, mongoose/mongodb
Ví dụ:
var persons = [
{id: 1, name'Joe', active: false},
{id:2, name:'Jane', active: false})
];
dữ liệu này được cung cấp trong cơ thể và tôi muốn thiết lập thuộc tính tích cực false.
exports.setActivePropertyOnPersons = function(input,callback){
for(var i = 0;i<input.body.length;i++){
mongoose.model('person').findOne({id:input.body[i].id}, function(err, person){
person.active = false;
person.save();
})
}
callback.send(200)
};
Mã này cảm thấy không tốt. Có truy vấn nào tốt hơn để làm điều này không? Tôi không tìm thấy bất kỳ tài liệu nào trong tài liệu.
Đây là phương pháp cơ bản bằng cách chọn nhiều hơn một tài liệu với '$ in', nhưng [ Lệnh '.update()'] (http://docs.mongodb.org/manual/reference/method/db.collection.update/) cần [[multi]] (http://docs.mongodb.org/ tham số thủ công/tham chiếu/phương pháp/db.collection.update/# multi-parameter) để thực sự thay đổi nhiều hơn so với tài liệu đầu tiên phù hợp. –
Cảm ơn bạn đã sửa :-) Tôi đã cập nhật câu trả lời – Protostome
Bạn sẽ xử lý các giá trị khác nhau trong biến hoạt động như thế nào? –