Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase Flatter Profile Matching应用程序-云Firestore数据建模|如何查询以避免对已刷卡的UID进行不必要的读取´;s_Firebase_Flutter_Google Cloud Firestore_Geofirestore - Fatal编程技术网

Firebase Flatter Profile Matching应用程序-云Firestore数据建模|如何查询以避免对已刷卡的UID进行不必要的读取´;s

Firebase Flatter Profile Matching应用程序-云Firestore数据建模|如何查询以避免对已刷卡的UID进行不必要的读取´;s,firebase,flutter,google-cloud-firestore,geofirestore,Firebase,Flutter,Google Cloud Firestore,Geofirestore,我尽了最大努力使用搜索功能,但并没有真正得到我正在搜索的结果 目前,我尝试复制一个功能,用于在卡堆栈上滑动配置文件。配置文件通过Firebase Firestore后端加载。问题是,由于geoFireStore查询,我在特定半径内的每次加载都会得到一大堆文档,我希望直接在查询中减少读取量 因此,我试图实现的是,当我刷一次配置文件(左或右)时,我再也不想在查询中读取它。此外,为了保存读取,我不想在客户端执行此操作,应该直接在查询中执行 目前的Firestore JSON结构: 用户(集合) U

我尽了最大努力使用搜索功能,但并没有真正得到我正在搜索的结果

目前,我尝试复制一个功能,用于在卡堆栈上滑动配置文件。配置文件通过Firebase Firestore后端加载。问题是,由于geoFireStore查询,我在特定半径内的每次加载都会得到一大堆文档,我希望直接在查询中减少读取量

因此,我试图实现的是,当我刷一次配置文件(左或右)时,我再也不想在查询中读取它。此外,为了保存读取,我不想在客户端执行此操作,应该直接在查询中执行

目前的Firestore JSON结构:

  • 用户(集合)
    • UIDs[文件]
      • 名字
      • 活跃的
      • 匹配{map}
如果匹配映射不包含自己的UID(如果exist为null),则在查询中读取,否则当映射匹配下的其他用户配置文件中存在自己的UID时(布尔值:true或false表示喜欢或不喜欢),则不显示为查询结果

我的流是这样构建的:

return geo
    .collection(
        collectionRef:
            friendrCollection.where("active", isEqualTo: true).where("match.$uid", isNull: true))
    .within(
        center: geoFirePoint,
        radius: suchRadius,
        field: 'position',
        strictMode: false)
    .map(_friendrsGPSListFromSnapshot);
}

我已经为此工作了3周,但没有得到我想要的结果:D

-我应该留在firestore还是更适合实时数据库? -我需要如何构造数据以使“except”查询正常工作

现在就像:

集合:用户-->文档:UID-->匹配{ownUID}

提前谢谢


Andreas:)

我仍然没有找到适当的解决方案来减少firestore查询中不必要的概要文件读取次数

有人有办法处理这个零件吗

我找到的唯一方法是在客户端(额外的firestore集合)上查找现有匹配项,但这意味着我总是必须加载整个配置文件包,然后将它们丢弃:(

谢谢大家!

安德烈亚斯