我想查看“chefCollection”中的任何文档中是否存在“chefId”(屏幕快照的带圆圈的字段)。为此,我在下面编写查询。
Future<bool> checkChefID(String userID) async {
final chefCheck = (await Firestore.instance.collection('chef')
.document("chefId")
.collection("chef")
.where("chefID", isEqualTo: userID)
.getDocuments())
.documents;
print("Query result: " + chefCheck.toString());
chefCheck.length > 0 ? return true : return false;
}
在上面的函数中,此(rhnKjYg2yMhf5IVjI0zvTi7Mjpn2)作为userID参数传递。它肯定存在于厨师集中
这是我得到打印语句的结果
I/flutter (20455): Query result []
最佳答案
更改此:
final chefCheck = (await Firestore.instance.collection('chef')
.document("chefId")
.collection("chef")
.where("chefID", isEqualTo: userID)
.getDocuments())
.documents;
到这个:final chefCheck = (await Firestore.instance.collection('chef')
.where("chefID", isEqualTo: userID)
.getDocuments())
.documents;
在数据库中,您有一个名为chef
的集合,并且在文档内部有一个名为chefID
的字段,因此您不应有.document("chefId").collection("chef")