【发布时间】:2020-08-18 23:06:53
【问题描述】:
我正在尝试保存带有一些特殊字符的字符串,当我尝试这样做时,我的 Firestore 将其保存为地图。这就是我的意思:
Future<Null> setSeen(bool seen, bool existent) async {
print(episode['title']);
//Output: Episódio 5.5
Map<String, dynamic> episodeData = {episode['title'].toString(): seen};
if (existent) {
await Firestore.instance
.collection('users')
.document(uid)
.collection('seen')
.document(title)
.updateData(episodeData);
} else {
await Firestore.instance
.collection('users')
.document(uid)
.collection('seen')
.document(title)
.setData(episodeData);
}
}
上面的代码像这样保存我的数据:
这就是我想要保存的方式:
【问题讨论】:
-
字段名称中的
.被解释为访问嵌套字段的请求。您可以通过将字符串包装在FieldPath对象中来防止这种情况,如下所示:stackoverflow.com/a/53856542,但我没有立即在FlutterFire 中看到如何做到这一点。 -
尝试把'\'放在点之前
标签: firebase flutter dart google-cloud-firestore