【发布时间】:2020-07-19 17:00:47
【问题描述】:
在我的客户中,我有一个类,例如 ClassA,其中包含一个属性 List<ClassB>。
我的目标是将对象 ClassA 保存在 Firestore 中。此外,我希望将 List<ClassB> 属性作为 Map 而不是 Array 保存到 Firestore 中(也可以在客户端内将其保存为 List<Object>)。
既然我想使用json_serializable 库,有没有办法为给定类的属性指定如何进行序列化/反序列化并选择应为 Firestore 映射使用哪种键?
【问题讨论】:
-
为什么不直接将列表转换为地图,然后提供给 Firestore?
-
@DougStevenson 这就是我想要做的,但我不确定如何使用 json_serializable。不过,我想在我的客户端中保留 List 结构。
-
您不必放弃该列表。只需使用它来编写地图以写入 Firestore。
-
@DougStevenson 对,所以我们说的是同一件事 :) 我的问题是,是否可以使用上面提到的库而不是手动编写来半自动地执行此操作。
-
据我所知,该库处理 JSON,而不是其他对象 Dart 对象。 Firestore 不处理 JSON,它处理 Dart 对象。
标签: flutter dart serialization google-cloud-firestore