Mongodb:一次更新同一文档中多个数组的元素
Mongodb: update elements of multiple arrays in same document at a time
我用$push
来更新一个数组的元素。但是当我尝试更新多个数组的元素时,使用逗号分隔的值保持$push
,如下所示,它显示错误。怎么做?
var conditions = { some condition };
var update = { $push : {Feedback : { Feedbacks:req.body.Feedbacks}}, {Strength : { Strengths:req.body.Strengths}}};
var options = { multi : true};
Model.update(conditions, update, options, callback);
架构为:
Model : {
Field1 : {
type:Number
},
Field2: {
type : String
},
Feedback : {
type: Array,
Default:[]
},
Strength : {
type: Array,
Default: [],
}
};
注意:它适用于一个阵列更新(如果我在推送后只保留反馈数组),但不适用于多个阵列更新。如何对多个阵列执行操作?
在 mongodb 中的一次更新调用中推送到两个单独的数组
Model.update(
conditions,
updates,
options,
callback
)
var updates =
{
$push :
{
Feedback : { $each: req.body.Feedbacks },
Strength : { $each: req.body.Strengths }
}
}
{ $push: { <field1>: <value1>,
<field2>: <value2> } }
即
$push :
{
Feedback : { $each: req.body.Feedbacks },
Strength : { $each: req.body.Strengths } }
相关文章:
- MongoDB (php) - 以数组而不是多个属性的形式返回文档属性
- 将当前用户的 ID 推送到 meteorjs 中集合/文档的内部数组
- 如何从 URL 数组向文档添加图像列表
- 将子文档推送到父数组时遇到问题
- 如何在mongodb(mongose)中覆盖子文档的数组属性
- 返回一个关联数组,而不是mongoose中的文档数组
- 如何获取文档数组中元素的计数-MongoDB
- node.js使用monk从数组中按id获取文档
- MongoDB findAndModify:>>>查找和更新文档数组中的对象
- 获取由 javascript 读取的数组文本字段值
- 更新数组中的嵌入文档 - Mongodb + Node Driver
- 从 JSON 对象数组中获取与条件匹配的文档
- 查找文档,然后在数组中查找条目并将其从数组中删除
- findAndModify,如何对文档进行操作's数组搜索对象并更改字段值
- 查询以匹配数组的第n个文档
- 使用 shift 在具有字符串/数组的文档中查找元素
- 返回一组文档,其中所有子数组都包含环回或nodejs中的给定值
- php数组转换为javascript数组文档.write javascript_array
- 在模型中插入一组文档
- 单击显示数组文本字段值