相关疑难解决方法(0)

如何使用Android对Firestore进行分页?

我阅读了Firestore文档和互联网上的所有文章(stackoverflow)关于Firestore分页但没有运气.我试图在docs中实现确切的代码,但没有任何反应.我有一个基本的数据库项目(超过1250或更多),我想逐步得到它们.通过滚动来加载15个项目(到数据库中的最后一项).

如果使用docs代码:

// Construct query for first 25 cities, ordered by population
Query first = db.collection("cities")
    .orderBy("population")
    .limit(25);

first.get()
    .addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
    @Override
    public void onSuccess(QuerySnapshot documentSnapshots) {
        // ...

        // Get the last visible document
        DocumentSnapshot lastVisible = documentSnapshots.getDocuments()
            .get(documentSnapshots.size() -1);

        // Construct a new query starting at this document,
        // get the next 25 cities.
        Query next = db.collection("cities")
            .orderBy("population")
            .startAfter(lastVisible)
            .limit(25);

        // Use the query for pagination
        // ...
    }
});
Run Code Online (Sandbox Code Playgroud)

怎么做?文档没有太多细节.

PS:用户滚动时我需要使用回收站视图(不是列表视图).谢谢

java android firebase google-cloud-firestore

15
推荐指数
2
解决办法
3860
查看次数

Firebase 收集组查询 Id/Key

我一直在关注以下文档:https : //firebase.google.com/docs/firestore/query-data/queries#collection-group-query

我的数据结构大致如下:

/teams/{teamid}
{
   displayName: "Company X Team",
   owner: "userid",
}

/teams/{teamid}/invites/{emailAddressAsKey}
{
    someProp: "my data"
}
Run Code Online (Sandbox Code Playgroud)

在我的网络应用程序中,我想搜索所有不同的团队记录,以找到一个邀请,其 ID/密钥等于我传入的电子邮件地址。阅读文档后,我认为集合组查询就是我的意思寻找。但是,我的情况与示例不完全匹配。我想匹配键,而不是文档中的道具。我想我可以再次添加电子邮件地址作为道具,但这感觉不对。

firebase google-cloud-firestore

6
推荐指数
2
解决办法
3348
查看次数

关于documentId的Firestore集合组查询

在我的情况下,用户可以“喜欢”另一个用户的个人资料。结果,我为每个用户创建了一个名为“ likedBy”的子集合,在其中为特定用户创建了一个文档,例如:

users(col)-> User A(doc)-> LikeedBy(col)-> User B(doc),User C(doc)

因此,在极少数情况下删除用户,我想删除该用户的所有喜欢的问题。

我只是不确定这是否可能(一种解决方法是将userId再次保存在所述文档中并进行查询)。

我基本上正在寻找的是这样的:

db.collectionGroup('likedBy').where(firebase.firestore.FieldPath.documentId(), '==', "User A").get();
Run Code Online (Sandbox Code Playgroud)

问题是,我无法在Firestore控制台中为documentId创建索引。

javascript firebase google-cloud-firestore

4
推荐指数
2
解决办法
1626
查看次数