在我们的用户从文档中删除一堆标记的特定情况下,我们从Mongoose获得了一堆VersionErrors,并且这些操作显然并非全部完成。只是想弄清楚如何绕过这个/确保它不会发生。对数据结构中的体系结构更改开放!
以下是该方案:
我们有一个名为Ask:
的模型Graphics2D g2 = (Graphics2D) g;
errorCount = Math.min(errorCount, shapes.length);
for (int i = 0; i < errorCount; i++) {
g2.draw(shapes[i]);
}
在我们的界面上,我们显示与用户正在查看的特定询问相关联的标记模型列表,他们可以添加新标记或删除现有标记。
如果用户同时删除了4-5个标签,我们会向服务器发送4-5个单独的HTTP DELETE请求,每个请求都会尝试从var AskSchema = new Schema({
...
_tags: [{type: Schema.Types.ObjectId, ref: 'Tag'}],
created_at: {type: Date, default: Date.now, required: true},
updated_at: {type: Date, default: Date.now, required: true}
}
数组中删除该ID。
这就是VersionError发生的地方,这正是Mongooses的版本控制系统应该做的。
问题是:我应该从前端或后端做什么来避免这种情况。我目前的想法是:
_tags
和_ask
以维持这些关系(闻起来非常SQLy)_tag
我错过了任何解决方案吗?这里最好的做法是什么?