Trên thực tế, đây là một ví dụ về findOneAndUpdate lệnh:
Company.findOneAndUpdate(
{'companyId': parseInt(req.params.companyId)},
{$pull: {'companyDivisions.$[element].divisionDepartments': {'departmentId': parseInt(req.params.departmentId)}}},
{arrayFilters: [{'element.divisionId': parseInt(req.params.divisionId)}]},
(err) => {
if (err) res.status(400).json(err)
res.status(200).json({success: true, message: 'this worked without errors!'})
}
)
Tôi gặp hai vấn đề:
1) Tôi đã cố thêm test trường không được trình bày trong giản đồ của tôi.
2) Tôi hoàn toàn quên parseInt khốn nạn khỏi các tham số của tôi, bởi vì trong lược đồ của tôi, đây là những con số.
Cám ơn mọi người. :D