一尘不染

Swift-如何在Firebase上按降序创建排序查询?

swift

我将Firebase与Alamofire,AlamofireImage结合使用,以将我的imageURL数据缓存在内存中并上传ImageShack。

我一直尝试创建降序查询并尝试搜索,但是找不到适合我的描述。这是我在Firebase上的测试 ref_post

childByAutoId()

-userUid

-imageUrl

-时间戳(我已经使用此时间戳创建了)

使用 NSDate()。formattedISO8601* 是最好的方法,还是可以建议我基本上进行处理?

如何在Firbase IOS / Swift中进行降序查询。这是我的 viewDidLoad

let query = DataService.ds.REF_POSTS.queryOrderedByChild("timestamp")

    query.observeEventType(.Value, withBlock: { snapshot in

        if let snapshots = snapshot.children.allObjects as? [FDataSnapshot] {
            self.posts = []
            for snap in snapshots {
                if let postDict = snap.value as? Dictionary<String, AnyObject> {

                    print(postDict)

                    let post = Post(imageUrl: postDict["imageUrl"]! as? String, username: DataService.ds.REF_USERS.authData.uid)

                    self.posts.append(post)
                }
            }

            self.tableView.reloadData()
        }
    })

阅读 193

收藏
2020-07-07

共1个答案

一尘不染

self.posts = self.posts.reverse()

为了保存NSDate实例,我个人使用timeIntervalSinceReferenceDate(),它返回一个NSTimeInterval(是Double),然后可以将其保存在Firebase中。当读取数据时,你可以得到原始NSDateinit(timeIntervalSinceReferenceDate:)

2020-07-07