【发布时间】:2022-10-21 22:05:50
【问题描述】:
我正在使用 Flutter 和 MongoDB 构建应用程序。有一件事我不明白。
当我检索用户数据时,我通过将Map<String, dynamic>? 变量传递给函数fromJson 来设置我的对象。
问题是 id 正在获取 mongo 的所有语法,例如:ObjectId("62096f5cbbf77abdf2ee00e4") 而我只希望 "62096f5cbbf77abdf2ee00e4" 具有更清晰的语法。
那可能吗?
User.fromJson(Map<String, dynamic> json) :
id = json['_id'].toString(),
name = json['name'].toString();
用解决方案编辑
我认为最好的解决方案是使用来自 mongo_dart ObjectId 的自定义类型来保存 id。
【问题讨论】:
-
您还可以将 ID 子串出来,例如:id.substring(10, id.length - 2)),它为您提供 '62096f5cbbf77abdf2ee00e4'
-
是的,但我认为最好使用 ObjectId 类型,因为 mongo_dart 提供了它。这样代码就被优化了。
-
是的-我同意;只是在您无权访问后端以对其进行更改的情况下,但如果您确实这样做了。
标签: mongodb flutter dart objectid