我开始将 Firebase for Android 应用与 Kotlin 结合使用。那么问题是如何使用Firebase内置功能而不是添加ORM?我想使用类和对象,而不是处理 get、set、onSuccessListener 和其他 firebase 方法。所以我可以自己创建一些半 ORM,将所有内容划分为适配器和模型。然而有更简单的解决方案吗?我认为 Firebase 中应该有一些内置功能? 例如我们可以使用 Firebase 函数查询文档并将它们映射到类,按照官方手册:
val docRef = db.collection("cities").document("BJ")
docRef.get().addOnSuccessListener { documentSnapshot ->
val city = documentSnapshot.toObject<City>()
}
为了使控制器与数据库松耦合,我们可以创建类 AbstractModel 和 CityModel 以及 Queries 和 FirebaseAdapter 所以最后我们可以做类似的事情
val city = Cities("BJ")
而不是上面冗长的代码。 最终我发现问题是我们需要创建自己的 ORM 来为每个项目使用 Firebase。或者有更简单的解决方案吗?某些现有的 ORM 是否可以与 Firebase 配合使用?我做了一些研究,但是 Stackoverflow 政策禁止在问题中张贴商标。
这是一个非常好的 .NET 解决方案: Firestore.ORM