如何使用Firebase UI使用查询.document

时间:2019-02-15 16:58:37

标签: firebase kotlin google-cloud-firestore firebaseui

我正在使用此Firebase-UI

我有用户(集合),uid(文档)和图像网址数组。

This is my Firebase schema

如何使用文档查询来获取特定用户并获得imageUrl

Query query = FirebaseFirestore.getInstance()
    .collection("users")
    .document(auth.currentUser!!.uid)

错误:

  

以下任何函数均不能使用提供的参数来调用。   在com.firebase.ui.firestore.FirestoreRecyclerOptions.Builder中定义的setQuery(Query,(snapshot:DocumentSnapshot)→Profile)   在com.firebase.ui.firestore.FirestoreRecyclerOptions.Builder中定义的setQuery(Query,SnapshotParser)   在com.firebase.ui.firestore.FirestoreRecyclerOptions.Builder

中定义的setQuery(Query,Class)

这可行,但是我只想知道是否可以使用.document

val query = FirebaseFirestore.getInstance()
        .collection("users")
        .whereEqualTo(FieldPath.documentId(), auth.currentUser!!.uid)

1 个答案:

答案 0 :(得分:0)

无法使用以下代码行:

Query query = FirebaseFirestore.getInstance()
    .collection("users")
    .document(auth.currentUser!!.uid)

因为这不是您在Kotlin中声明变量的方式。其次,因为在CollectionReference对象上调用document()函数时,它返回一个DocumentRefence对象而不是一个Query对象。

因此您可以简单地使用:

val document = FirebaseFirestore.getInstance()
    .collection("users")
    .document(auth.currentUser!!.uid)

document对象的类型现在为DocumentReference