我想创建一个动态查询,根据用户输入更新 Mongodb 集合中的文档。用户可以更新文档中的部分或全部字段。该文档还包含一个允许用户添加元素的数组。我知道如何为“查找”查询构建简单的动态查询,但在处理可能具有 , 等元素的更新查询时遇到$set
了$addToSet
困难$pull
。
我的最终查询将如下所示:
Col.update({'_id' : bookId}, {$inc : {'total_count' : 1}, $set: {'name': name}, $addToSet : {'reviewed_by' : user}})
查询的更新部分中的所有元素都将有条件地添加。
我在 SO 和其他地方进行了搜索,但没有看到任何显示如何完成此操作的示例。希望许多其他人也会发现这很有用。