gpt4 book ai didi

swift - 为什么我的 firestore 集合返回 0 个文档

转载 作者:行者123 更新时间:2023-11-28 10:10:38 26 4
gpt4 key购买 nike

这是我的数据库。

enter image description here

这是我的代码

 let db = Firestore.firestore()

let defaults = UserDefaults.standard
let userId: String! = defaults.string(forKey: "UserUUID")

db.collection("Portfolios")
.whereField("users." + userId, isEqualTo: true)
.limit(to: 1)
.getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {

for portfolioDocument in querySnapshot!.documents {

print("Portfolio: \(portfolioDocument.documentID) => \(portfolioDocument.data())")
let portRef = db.collection("Portfolios").document("portfolioDocument.documentID")

portRef.getDocument { (document, error) in
if let document = document {
print("Document data: \(document.data())")


portRef.collection("Accounts").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
var docs:[DocumentSnapshot] = []
for document in querySnapshot!.documents {

我什至对“Mogu...”文档 ID 进行了硬编码,但没有任何效果。我遗漏了什么明显的东西?

querySnapshot.documents 在最后一行为 0:

  for document in querySnapshot!.documents {

编辑:这是返回 0 个文档的最后一个查询。其余工作:

 no, that has no effect on the top level as that is successful. It is the last query that is brings 0 documents:  portRef.collection("Accounts").getDocuments() { (querySnapshot, err) in
if let err = err {
print("Error getting documents: \(err)")
} else {
var docs:[DocumentSnapshot] = []
for document in querySnapshot!.documents {

最佳答案

Accounts 集合中的 Coinbase 和 Default 文档实际上并不存在,请参阅 non-existent docs in the console .在您的屏幕截图中,请注意 Coinbase 和 Default 的文档名称是斜体和灰色的。这表明这些文档不是直接创建的,而是位于嵌套更深的文档的路径上,该文档确实存在。

尝试在 Coinbase 和 Default 中设置一个字段值。这应该会让它们出现在您的查询中。

关于swift - 为什么我的 firestore 集合返回 0 个文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48672926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com