mongodb - 缝合功能 updateOne 错误“不允许更新”
问题描述
我有一个 Stitch 函数可以做几件事,但在这一行出现错误:
try {
// voteAsObjectId is the Id of the photo to vote converted to BSON.ObjectId.
await db
.collection('photos')
.updateOne({ "_id": voteAsObjectId }, { "$inc": { votes: 1 }});
} catch (err) {
throw new Error("An error occurred while updating photo's votes:" + err);
}
错误如下:
StitchError: update not permitted
这似乎是与权限相关的错误,但我的应用程序中有一些其他功能,它们成功地运行了对该集合的每个.find
.insert
和查询,只有和操作给我带来了问题。.aggregate
.updateOne
.updateMany
我的收藏的权限如下所示:
这是我的架构:
这是一个示例文档:
解决方案
我建议检查以下内容:
检查架构选项卡,看看您的文档是否有任何不符合配置架构的内容。架构的默认配置可能与文档的实际架构不匹配。您可能需要修改此架构以使更新正常工作。
单击“默认”角色上的编辑按钮(铅笔),然后选中该角色的“应用时间”。您尝试更新的文档可能与任何角色都不匹配,并且该角色需要更新。
如果这不起作用,请单击侧边栏上的“日志”按钮检查应用程序日志: 日志选项卡
在那里您可以看到“不允许更新”错误,但有更多关于更新失败原因的详细信息。
推荐阅读
- android-studio - 在 android studio 3.3.2 中创建新项目时出错
- arrays - 如何循环数组,以便一个填满,而另一个清空到串行监视器中?
- java - 如何使用 Selenium 获取元素的部分文本
- c# - 将非特定数量的数据集行添加到列表中
- java - java错误:找不到符号GPSException
- mongodb - Sails 应用程序无法连接本地主机 mongo db
- javascript - 如何在任意圆内创建方形 div?
- html - 如何在大屏幕中设置背景图像全高宽?
- java - 如何使用 j_security_check 调用后续请求
- google-apps-script - 将行中的特定单元格复制到另一张工作表上的特定单元格?