作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
user-ids 键将包含电子邮件数组。我如何在 iOS 中应用带有键和值数组的 queryOrderedByChild
var ref = Database.database().reference().child(Constants.ACTIVES)
self.ref.queryOrdered(byChild: "user_ids").queryEqual(toValue: "krishna.vutti@gmail.com").observe(.value, with: { (snapShot) in {
})
在上面的查询中,toValue 接受单个字符串值,但在我的例子中它将是电子邮件数组。
最佳答案
Firebase 数据库 API 不允许对数组内容进行排序/过滤。
如果您希望能够查找特定用户的“ACTIVES”,您应该向数据库添加一个节点,在其中保存每个用户的事件 ID。
activesByUser
uid1
activeId1: true
activeId2: true
uid2
activeId3: true
这意味着您要保留两个方向的关系信息:从事件到用户(您已经拥有)和从用户到事件(使用我添加的结构)。在 NoSQL 数据库中在两个方向上保留此信息非常常见,因为它使得在任一方向上查找信息都变得非常简单
另请参阅我的回答:
关于ios - 如何在 iOS firebase 中使用带有键和多个值的orderedByChild?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49402847/
我是一名优秀的程序员,十分优秀!