RethinkDB - 多个唯一字段?
RethinkDB - Multiple unique fields?
我来自 sql/django 的 ORM 并且热爱 rethinkdb,除了缺少 "uniqueness constraints" 这对我的实时应用程序绝对至关重要。
如何确定两个相关字段是"unique together"?我能找到的唯一答案是 3 岁的,对我的问题没有必要适用的解决方案。
例如: 用户可以拥有多个 "slightly customized" 小部件,但每种颜色只有一个。所以我需要确保 user/widget_color 组合 在一起是唯一的。
用户 1:
- 蓝色小部件// {'Blue widget': {size:5, valuex: 13}}
- 红色小部件
绿色
小部件
-- 这个用户应该没有办法保存另一个 "Blue widget" --
用户 2:
- 蓝色小部件// {'Blue widget': {size:1, valuex: 20}}
- 红色小部件
- 紫色小部件
我是否可以选择使用 RethinkDB 进行此操作?
您可以将主键设为 [user, color]
的数组,这将只允许插入具有相同 user/color 对的一个文档。喜欢 widgets.insert({id: ['mlucy', 'blue'], ...})
.
我来自 sql/django 的 ORM 并且热爱 rethinkdb,除了缺少 "uniqueness constraints" 这对我的实时应用程序绝对至关重要。
如何确定两个相关字段是"unique together"?我能找到的唯一答案是 3 岁的,对我的问题没有必要适用的解决方案。
例如: 用户可以拥有多个 "slightly customized" 小部件,但每种颜色只有一个。所以我需要确保 user/widget_color 组合 在一起是唯一的。
用户 1:
- 蓝色小部件// {'Blue widget': {size:5, valuex: 13}}
- 红色小部件
绿色 小部件
-- 这个用户应该没有办法保存另一个 "Blue widget" --
用户 2:
- 蓝色小部件// {'Blue widget': {size:1, valuex: 20}}
- 红色小部件
- 紫色小部件
我是否可以选择使用 RethinkDB 进行此操作?
您可以将主键设为 [user, color]
的数组,这将只允许插入具有相同 user/color 对的一个文档。喜欢 widgets.insert({id: ['mlucy', 'blue'], ...})
.