【发布时间】:2020-05-29 23:50:10
【问题描述】:
我正在设置我的模型类以确认 sqflite 的文档,该文档建议包括一个命名构造函数来转换为地图/从地图转换,以更好地处理类和数据库之间的数据。我能找到的每个示例都非常简单,类属性都是简单的数据类型。
使用下面显示的构造函数和方法,在处理诸如此类的类时,与 Map 之间的转换非常简单。
class Human{
final String name;
final String height;
Final String weight;
Human({this.name, this.height, this.weight});
}
但是,当你有一个类中的一个字段有点复杂时,我不明白如何在命名构造函数和 xxx 方法中构造事物以返回我“相信”我应该得到的数据映射.
class Human{
final String name;
final String height;
Final String weight;
List<Child> children = [];
Human({this.name, this.height, this.weight, this.children});
}
Human({this.name, this.height, this.weight, this.children});
Human.fromMap(Map<String, dynamic> map)
: name = map['name'],
height = map['height'],
weight = map['weight'],
children = map['children'];
Map<String, dynamic> toMap() {
return {
'name': name,
'height': height,
'weight': weight,
'children': children,
};
}
列出孩子是我正在努力解决的部分。我相信您必须将每个子对象也转换为父地图中的地图,但在这里输掉了这场战斗。
我的方法是不是在这里?我应该使用其他方法来完成此操作吗?
任何帮助将不胜感激。
【问题讨论】:
-
你能分享你的孩子班吗?