【发布时间】:2020-11-28 18:02:19
【问题描述】:
我想使用sqflite package 来存储我的对象。我读过一些关于它的articles、tutorials 和examples。到目前为止,我明白了一切。但它们都没有涵盖我的用例:
我有一个名为Foo 的类。除了一些原始字段之外,该类还包含Bar 类的对象。 Bar 只有原始字段。另外Foo 有一个Baz 类型的对象列表。 Baz 也只有原始字段。
class Foo {
// simple fields
String id;
Bar bar;
List<Baz> bazs;
}
class Bar {
// only primitive fields
String id;
}
class Baz {
// only primitive fields
String id;
}
我想将bar 对象与数据库中的foo 对象连接起来,并与bazs 对象连接起来。我该怎么做?最好的方法是什么?
我对 SQL 并不十分熟悉。我知道 SELECT、WHERE、ORDERBY 等是什么意思,但我的知识并没有深入。
我在 Stack Overflow 中找到了this qustion,但我想知道将所有值存储为 JSON 是否真的有效。如果 JSON 变得非常大,会发生什么?
目前我唯一的想法是将bar 对象的id 作为字段存储在foo 对象中,反之亦然。 foo 还可以保存ids 的bazs 对象的列表。或者每个baz 对象都持有foo 对象的id。这是一个好的解决方案吗?
有没有可能让sqflite处理对象之间的关系?
【问题讨论】:
标签: sqlite flutter dart persistence sqflite