Firebase 查询 2 级深度,无需完整参考 swift

Posted

技术标签:

【中文标题】Firebase 查询 2 级深度,无需完整参考 swift【英文标题】:Firebase query 2 levels deep without full reference swift 【发布时间】:2016-07-15 21:41:29 【问题描述】:

有没有办法在不知道整个参考路径的情况下查询 Firebase 数据?我需要能够根据 solution number 值将数据从一个用户的个人资料中提取到另一个用户。

这是我的数据结构的图片

data structure setup

当我尝试发送信息时,我无法访问其他用户的 UID。有什么办法可以解决这个问题,还是我必须重组我的数据?

这是我目前的查询方法,我只是认为 for 循环可能是不好的做法

// MARK: - Search for trainees
func searchForTrainees() 

    self.ref.child("users").observeSingleEventOfType(.Value, withBlock:  snapshot in

        if snapshot.value! is NSNull 

         else 

            if let users = snapshot.value! as? JSONDictionary 

                for user in users 

                    let userUID = user.0

                    if let userInfo = user.1 as? JSONDictionary 

                        if let uplineSolutionNumber = userInfo["upline_solution_number"] as? String 

                            if uplineSolutionNumber == self.currentUser?.solution_number 

                                self.syncUserData(userUID)

                            
                        
                    
                
            
        
    )

如果有更有效的方法,请告诉我

【问题讨论】:

【参考方案1】:

您需要通过将数据复制到多个节点来以不同的方式构建数据。 看看这篇文章它应该可以帮助你理解这个概念: https://firebase.googleblog.com/2015/10/client-side-fan-out-for-data-consistency_73.html?m=1

【讨论】:

以上是关于Firebase 查询 2 级深度,无需完整参考 swift的主要内容,如果未能解决你的问题,请参考以下文章

Firebase:在不知道父级的情况下查询内部子级

任何人都可以帮助从 FirebaseDatabase 获得 2 级深度字典吗?

渔乐吧linux完整运营级组件架设教程

ActiveRecord 2 级深度范围

IONIC - 如何显示来自firebase存储的图像而无需下载它[关闭]

百万级数据记录量优化查询以及导出EXCEL文件编程