如何在Firestore中通过Flutter

时间:2018-05-28 22:00:24

标签: firebase google-cloud-firestore flutter

在Firestore中设置基本类型非常简单。

但我找不到如何使用flutter Firestore插件构建Geopoint,Timestamp和另一个文档引用。

您为每个对象设置为冷却Map<String,dynamic>的内部数据做了什么?

任何帮助或示例?

3 个答案:

答案 0 :(得分:3)

我在服务器上手动创建了一个对象并将其放入我的flutter应用程序中。 enter image description here

对于TimeStamp,您可以直接从dart传递DateTime对象。

对于Geopoint,FireStrore插件中有GeoPoint对象。

new GeoPoint(longitude: 3.4, latitude: 4.5) })

对于另一个文档引用,您可以将作为值检索的DocumentReference传递给数据对象。

答案 1 :(得分:0)

在最新版本的 Flutter 中,创建的 GeoPoint 没有命名参数。

GeoPoint(0, 0);

第一个参数 => 纬度

第二个参数 => 经度

答案 2 :(得分:0)

要在 firebase 中创建或更新地理点,您可以直接使用对象 GeoPoint(Latitude, Longitude),此示例来自 official documentation

CollectionReference users = FirebaseFirestore.instance.collection('users');

Future<void> updateUser() {
  return users
    .doc('ABC123')
    .update({'info.address.location': GeoPoint(53.483959, -2.244644)})
    .then((value) => print("User Updated"))
    .catchError((error) => print("Failed to update user: $error"));
}