Firebase 在Firestore中查询具有类型引用的文档
根据文档,类型Firebase 在Firestore中查询具有类型引用的文档,firebase,dart,flutter,google-cloud-firestore,Firebase,Dart,Flutter,Google Cloud Firestore,根据文档,类型reference在NoSQL世界中充当外键。但当我在长笛/飞镖中询问它时。 Firestore中的数据库 [收藏] 注:DocumentOne的数据类型均为reference 参考收集 文档一 FKOne/doc001 FK2/doc002 FKOne doc001 “一些数据”:“只是一些数据” FK2 doc002 “另一个数据”:“只是另一个数据” 示例代码: Firestore.instance.collection('CollectionWith
reference
在NoSQL世界中充当外键。但当我在长笛/飞镖中询问它时。
Firestore中的数据库
[收藏]
注:DocumentOne的数据类型均为reference
- 文档一
- FKOne/doc001
- FK2/doc002
- doc001
- “一些数据”:“只是一些数据”
- doc002
- “另一个数据”:“只是另一个数据”
Firestore.instance.collection('CollectionWithReference').snapshots()
.listen((data) => data.documents.forEach((document) => print(document.data)));
输出
{FKOne:DocumentReference的实例,FKTwo:[DocumentReference的实例,'DocumentReference'的实例,'DocumentReference'的实例]]
您问题中的输出是可以预期的。
由于您的引用被解析为对象,
打印
将只打印出“DocumentReference”的实例
,其中包含有关您的参考资料的所有必要数据。在以下代码中,我将打印出每个引用的
路径
(它是每个文档引用
对象的getter):
Firestore.instance.collection('CollectionWithReference').snapshots().listen((data) {
data.documents.forEach((document) {
print(document.data['FKOne'].path);
document.data['FKTwo'].forEach((documentReference) => print(documentReference.path));
});
});
那么你的问题是什么呢?正如标题所说,我想查询该文档中引用的数据,但它给了我“DocumentReference”的
实例。我正在努力解决这个问题。谢谢。我没有深入研究Firestore如何与Flatter一起工作,而是依赖于VisualStudio代码中DartCode提供的Intellisense。它没有弹出path
@clunless,因为它无法知道数据的类型。您可以指定数据的数据类型。如果需要代码建议,可以执行以下操作:document.data['FKOne']as DocumentReference
。