从数据库加载父对象时,似乎无法加载嵌入对象。
假设我有以下的父母和孩子类。
@collection
class Email {
Id? id;
String? title;
List<Recepient> recipients = List.empty(growable: true);
}
@embedded
class Recepient {
String? name;
String? address;
}
字符串
如果我将其存储到Isar数据库中,(通过Isar Inspector),其中包括嵌入的对象及其所有值。这意味着数据被正确存储。问题是当我尝试接收该集合的一个项目时:我正确填写了电子邮件属性,但收件人列表始终为空。阅读Isar文档,它提到嵌入的对象应该被自动加载。2但是我从来没有发现一个嵌套对象是List的例子。3这会是问题吗?
1条答案
按热度按时间pod7payv1#
我的问题是List.empty(growable:true)。这个构造函数创建一个空列表,但它不使用任何数据初始化列表。Isar不会自动将数据加载到未初始化的列表中。我添加了一个构造函数,如
字符串
并删除了“List.empty(growable:true)”。