mongodb - 用于可变排序的 mongoDB 模式
问题描述
我想创建一个允许快速更改(排序)顺序的良好模式 - 客户端应该能够添加、删除和重新排列组内文档的顺序(可能使用组标识符或放)。
此外,每个文档通常都可以通过它的 ID 直接调用 - 并且只需要这些数据,而不是完整的组。
建议在每个文档中返回当前订单索引。
为组中的每个文档使用一个键{..., order: 1}
会导致使用新查询更新每个文档(我是 mongoDB 的新手——如果我错了,请纠正我)以更改和/或增加订单值。
{id: 1, group: 1, order: 1}
{id: 2, group: 0, order: 1}
{id: 3, group: 1, order: 3}
{id: 4, group: 1, order: 2}
或者使用一个集合['id1', 'id2', ...]
或者只是插入整个文档(它们并不大 - 这篇文章的大小几乎相同;-))在这个集合中。
不确定什么是最佳解决方案以及如何更新此数据。此外,我认为我会将组大小限制为 999 个项目。但这是开放的,将取决于性能。
谢谢你的帮助!
解决方案
推荐阅读
- sql - SQL Server - 获取日历月份的开始和结束
- java - 系统运行多个小时后的 java.lang.NoSuchMethodError
- c# - 如何使我的 fluent API 表可公开访问?
- iframe - DocuSign 嵌入 url 未在 iFrame 中呈现
- java - 调用 String replace() 时出现 IndexOutOfBounds 异常
- java - 如何在给定时间的下一小时内获得随机时间?
- c++ - 在 C++ 中生成任意嵌套的向量
- java - 为什么不允许使用instanceof,但泛型中允许使用Class.isInstance()?
- ruby - 不是类变量,但可能是实例变量——但在什么上?
- reactjs - 如何测试函数是否在功能性 React 组件中调用 onChange?