我想在 tableView 中显示嵌套数据。
我的数据结构如下...
/users
/userid
name: "John"
age: 23
/likedPosts
0:post1
1:post2
对于表格 View ,我想显示这些帖子(它们有自己的数据集合)。
为了做到这一点,我需要...
1) 获取数组的个数
2) 查询用户喜欢的帖子数组值,得到帖子的内容。
我目前正在使用 getDocument 函数,但无法弄明白。
例如...
func getUserLikedPosts() {
if let user = Auth.auth().currentUser {
let userFS = Firestore.firestore().collection("users").document(user.uid)
userFS.getDocument(completion: { (snapshot, error) in
print(snapshot?)
})
}
}
这甚至没有打印出嵌套数组?
最佳答案
像这样的东西应该可以工作:
func getUserLikedPosts() {
if let user = Auth.auth().currentUser {
let userFS = Firestore.firestore().collection("users").document(user.uid).collection(“likedPosts”)
userFS.getDocuments(completion: { (snapshot, error) in
print(snapshot?)
})
}
}
使用 Firestore,您需要深入到您想要的实际节点,这与 Firebase 不同,您可以在其中访问子快照。
因此,在与 OP 快速讨论后,问题是用户没有 likedPost 对象。
访问数组(请注意我没有测试过这段代码,它只是一个例子):
If let doc = document, let array = doc[“likedPost] as NSArray {
print(array)
}
关于ios - 快速查询到 Firebase Firestore 嵌套数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47725359/