我有一个Firebase Firestore系列的产品(125和成长中)。每个产品文档大约有18个属性(名称、价格、库存等)。我可以使用以下方法成功地获得所有文档:
val product = document.toObject(Product::class.java)但我可以用:
val name = document.getString("name")推荐哪种更好?
发布于 2018-11-22 13:43:41
根据您的实际结构,您只有125个项目,您可以使用每个您想要的。如果您的集合会增长到包含大量的文档,那么可能有一个不应该使用第一种方法的原因。云修复使用反射,因此在大量文档的情况下,您的应用程序可能会变慢一些。
此外,如果您只需要显示一个或两个属性,为什么要全部显示呢?因此,如果您只需要字段的子集,只需使用第二种方法。
所以,即使我们谈论一个小的数据集(也许不是您的情况),但我看到的数据没有按照开发人员希望的方式正确地格式化。
发布于 2018-11-22 14:53:50
在开发过程中,我发现使用Document类的直接访问器方法从文档中获取字段更为方便。在这段时间里,我仍然在弄清楚每个实体有哪些精确的字段和类型。
如果/一旦所有文档都有相同的字段,并且您的数据模型相当稳定,我建议定义一个Product类来用Java/Kotlin代码对文档中的字段建模。
https://stackoverflow.com/questions/53432097
复制相似问题