3

我使用 IndexedDb 存储一些数据以供离线使用。我需要确保在对象存储中没有两个对象具有相同的某些属性。

例如,我的对象存储中存储电影详细信息的对象如下:

{title : value1, director : value2, writer : value3, revenue : value4} 

现在,当我添加数据时,我不想要 2 个具有相同 {title、director、writer} 的对象。根据我的探索,我可以在字段上创建索引并为此索引指定 unique = true。这样,对于这个特定字段,没有 2 个对象可以具有相同的值。但是,有没有办法在对象存储中指定这些“唯一一起”的字段。

4

1 回答 1

3

正如我在最新版本的规范中看到的那样,这应该是可能的。您可以通过将数组作为键路径传递来做到这一点。我自己没有尝试过,但这应该是解决方案。我建议您使用 firefox 的夜间版本来测试它。这将为您提供最大的可能性来实现工作。

objectstore.createIndex("indexname", ["title", "director", "writer"], { unique: true });
于 2013-03-06T13:35:27.803 回答