MongoDB:使用空参数设置$unset给出409错误
MongoDB: Set $unset with empty parameter gives 409 error
我尝试动态设置或取消设置值。大多数情况下,我必须同时做这两件事,但并非总是如此。这就是我所做的:
Collection.update(
{ _id: id },
{
$set: data,
$unset: remove
},
function (error) {
console.warn(error);
}
);
如果设置了data
和remove
,则这是有效的。但并不总是有一些东西必须删除。因此,如果remove = {}
,我将收到409错误,因为remove
为空。
如何改进更新?
在传入 remove
对象之前,您需要对它的大小进行额外的检查:
var update = {
$set: data
}
if (Object.keys(remove).length > 0) {
update['$unset'] = remove;
}
Collection.update(
{ _id: id },
update,
function (error) {
console.warn(error);
}
);
相关文章:
- 为什么window.open不打开一个以变量形式给出的链接
- jquery ajax https调用给出ERR_INSECURE_RESPONSE
- Numpad没有从CharCode中给出数字
- 在ng中给出文件路径包括什么
- 使用FB.ui的Facebook Feed对话给出API错误191
- Datatable get列值只给出前10行
- 正则表达式给出错误的输出
- 角度推入数组给出:TypeError:无法读取属性'推'的未定义
- 检查在使用节点运行程序时是否给出ARGV
- 动态创建的iframe中的window.onerror在lne 0处给出脚本错误
- IE11在javascript中定义类时给出SCRIPT1002错误
- ajax给出空白响应
- 在fabric.js中以PNG格式下载Canvas,给出网络错误
- 给出<选项>标记一个类?API调用不工作
- XMLHttpRequest在$.ajax工作的地方给出了CORS错误
- 当在coldfusion中通过AJAX传递时,FORM提交在IE浏览器中给出空表单
- Javascript,var name=1,“;类型名称“;给出“;字符串”;
- 信息窗口谷歌地图点击事件给出错误
- 如何使用D3.js根据json中给出的数据在Heatmap中创建可变大小的矩形
- MongoDB:使用空参数设置$unset给出409错误