由于唯一 ID 容器,无法检查数据是否存在于 firebase 中
Can't check if data exists in firebase due to unique id container
我正在使用 .push()
在 firebase 中存储数据。因此它包含在一个唯一的 id 中,例如:
ref.push({
myObject: {
title: "Some Title"
}
});
这是它在数据库中的显示方式:
我需要检查我推送到 firebase 的数据是否不存在,所以比较 myObject
被推送到数据库中存储的所有 myObject
个实例。我不知道该怎么做,因为这些唯一的 ID 在其中嵌套了 myObject
个实例。
注意:这只是现实中的一个例子 myObject
包含的内容比标题多 children,因此需要比较每个 children,因此整个 myObject
.
对 Firebase 的引用:var ref = new Firebase('https://myurl.firebaseio.com/Objects');
我尝试在应用程序代码中通过安全检查来解决这个问题,但这个唯一 ID 确实让我困惑它如何嵌套 myObject。
相关资源:http://firebase.com
由于要比较完整的对象(所有属性),正确的解决方案是在保存时生成哈希字符串。这个散列实际上就是你 "unique id / primary key",所以你很容易知道它是否存在,并且可以选择 overwrite/merge/etc...
在 firebase 中,不要使用推送(因为您不想要优先级),但请将您的结构设置为:/myObjects/<hashkey> = {...}
或其他支持索引列表,如@mccannf link 所建议:Check firebase for an existing object based on attributes, prevent duplicates
我正在使用 .push()
在 firebase 中存储数据。因此它包含在一个唯一的 id 中,例如:
ref.push({
myObject: {
title: "Some Title"
}
});
这是它在数据库中的显示方式:
我需要检查我推送到 firebase 的数据是否不存在,所以比较 myObject
被推送到数据库中存储的所有 myObject
个实例。我不知道该怎么做,因为这些唯一的 ID 在其中嵌套了 myObject
个实例。
注意:这只是现实中的一个例子 myObject
包含的内容比标题多 children,因此需要比较每个 children,因此整个 myObject
.
对 Firebase 的引用:var ref = new Firebase('https://myurl.firebaseio.com/Objects');
我尝试在应用程序代码中通过安全检查来解决这个问题,但这个唯一 ID 确实让我困惑它如何嵌套 myObject。
相关资源:http://firebase.com
由于要比较完整的对象(所有属性),正确的解决方案是在保存时生成哈希字符串。这个散列实际上就是你 "unique id / primary key",所以你很容易知道它是否存在,并且可以选择 overwrite/merge/etc...
在 firebase 中,不要使用推送(因为您不想要优先级),但请将您的结构设置为:/myObjects/<hashkey> = {...}
或其他支持索引列表,如@mccannf link 所建议:Check firebase for an existing object based on attributes, prevent duplicates