在 Firebase 实时数据库中,支持使用 GenericTypeIndicator 反序列化对象。有人可以阐明如何对 Firestore 做同样的事情吗?
我有一个文档快照,我想将其转换为参数化的 POJO。
这是我尝试这样做时抛出的错误
java.lang.RuntimeException: Could not deserialize object. Class com.thesportsbeing.thesportsbeing.screens.festadmin.eventslist.eventadmin.scoring.MatchScore has generic type parameters, please use GenericTypeIndicator instead.
Run Code Online (Sandbox Code Playgroud)
问题是 firestore 包中没有 GenericTypeIndicator,它存在于 realtime-database 包中。任何解决方法?或者把事情做好的东西会很棒。
MyClass 与此类似
public class MyClass<R extends SomeAbstractClass> {
R someClassWhichExtendsAboveAbstractClass;
}
Run Code Online (Sandbox Code Playgroud) 这是我的数据库结构。
城市 -> 地标 -> 景点(每一个都是一个集合)
查询
列出特定城市下的所有景点。
解决方案
在每个景点文档中保存 city_id
使用基于 city_id 的集合组查询和过滤器来获取特定城市的景点。
我的问题
不是在每个景点文档中保存 city_id,我可以只将文档指定给 collectionGroupQuery,它现在只在这个特定文档下的子集合中搜索。
在上面的例子中,我指定了城市文档的完整路径,我应该能够列出所有景点而无需基于 city_id 进行过滤。