问题标签 [flutter-objectbox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
569 浏览

flutter - 如何在 Flutter 的存储库中访问/注入 ObjectBox 数据库 - Reso Coder DDD

我见过的所有示例都在 State(less/full)Widget 中初始化 ObjectBox。我正在使用分层架构(目前正在重构为 DDD)并且想知道如何正确注入我的 ObjectBox。

在我的存储库中,我使用 injectable 和 getit 包注入数据源

然后,这些包创建一个JournalsRemoteDataSourceand of的实例JournalsRemoteDataSource并将其注入到存储库中。

ObjectBox 示例显示用于初始化

所以我不知道注入器如何初始化 ObjectBox 或者如果我要初始化(在上游) ,我如何objectBox从注入的对象中访问对象JournalsRemoteDataSourceobjectBoxMyApp()HomePage

PS:JournalsRemoteDataSource在每个读/写事件上重新打开盒子的性能很差

========== 更新 ========== 补充我对@vaind 的评论

与此同时,我在这个类似问题上找到了你的答案(不知道为什么我最初没有看到它)。我希望这种方法也能在这里发挥作用。但是,我仍然在初始化商店时遇到问题。我的原型来自 Firestore,如下所示:

虽然我不明白吸气剂的firebaseAuth来源,也没有找到任何解释。无论如何,我将其调整为

并将其与

除了final Store _store在 IntelliJ 中显示为灰色(未使用的变量)之外,我还收到了错误

0 投票
1 回答
175 浏览

flutter - 如何在 Flutter 项目的 Object Box 中进行单元测试?

我们如何对所有 crud 操作的颤振项目中的对象框进行单元测试?

这是一个例子。有很多盒子操作。我想知道是否有单独的对象盒存储可用于测试?

0 投票
2 回答
332 浏览

flutter - 如何更新对象框颤振中的数据

我使用 ObjectBox 来存储数据。但是如何更新相同的数据。在文档中,它说它将更新数据。但是当我通过一个带有一些新细节的旧笔记时,它会创建新笔记。

谢谢

0 投票
1 回答
182 浏览

flutter - 使用类型转换方法 (.toObjectBox) 在 ObjectBox 中存储嵌套数据结构

我想最好的(唯一?)方法是为嵌套结构创建一个单独的框,然后创建从父级(ONE)到子级(MANY)的关系。

但是,我的问题是如何实现.toObjectBox()将我的域数据模型转换为 ObjectBox 数据模型的方法。dartz 包中是否有类似Either的东西(返回左侧或右侧对象),它同时传输 2 个对象?

所以使用 ObjectBox 实体

我会将父级(客户)与嵌套数据反对(订单)存储在 2 个相关框中

这就是我通常实现该toObjectBox方法的方式。在这里,您会看到这行不通,因为我必须将父级和嵌套的子级分开。虽然我想我可以用一些意大利面条来实现这一点,但我想知道是否有一种聪明的方法可以做到这一点,因为我想这应该是一种常见的模式(尽管我还没有找到任何关于它的问答)。

=== 更新 ======================================

与此同时,我尝试自己创建一个回报结构,现在我正在努力让它发挥作用。

0 投票
1 回答
293 浏览

flutter - Flutter Objectbox:如何存储 Map 属性?

我有一个带有 Map 属性的类,但它似乎没有存储这个属性。所有其他属性都保存得很好:

当我保存一个时:

当我得到结果时(刷新后),我可以看到total是正确的,但totalByVersion仍然是空的。

谢谢!

0 投票
1 回答
58 浏览

objectbox - 是否有可能/值得在 ObjectBox 中深度嵌套数据?

ObjectBox 文档描述了创建 1:1 和 1:n 关系。但是创建 1:n:m 关系是否可能和可行?所以我会有一个像这样的域数据模型

并且想用一种myClassB.toObjectBox()ClassB.fromObjectBox(OboxEntity)方法来回转换它。

我不确定我是否可以轻松地将 1:n 方法扩展到进一步的嵌套层,并且通常将嵌套数据存储为 JSON 字符串是否更有意义。

===关于马库斯的回答的更新===

我通常使用 3 个数据模型层:域、数据传输、数据源。数据传输层提供其他 2 之间的中间方法。

然后为了获得一个值,我会调用存储库中的数据类 myData = MyDataDtoEntity.fromObjectBox(getDataFromObjectBox(id: id)).toDomain();

0 投票
1 回答
216 浏览

dart - 应用 ToMany 的更改与 dart 中的 objectbox 存储的关系

在项目中,我使用带有objectbox的最新 Dart 版本:^1.0.0:

创建节点和边之后。节点被分配到边缘对象中的节点列表(在 nodeObject 中反向),然后在 DAO 层中,它们(重新)应用于对象框的relList(ToMany)。

实际看跌:

main_test.dart:

edgeDao.dart

节点道.dart

数据库连接器.dart:

添加操作正常工作,就像更新一样,在我尝试保存边缘关系的更改之前,在从 ToMany 中删除旧节点并添加新节点之后(这会导致每次进一步的 put 操作都崩溃)。我从 objectbox (x3) 收到以下错误:

put() 和applyToDB()都不起作用。我什至尝试使用clear()然后将列表对象中的所有内容添加到 ToMany 中有什么建议为什么会发生这种情况?

0 投票
1 回答
66 浏览

objectbox - 创建和更新 ObjectBox 1:n 关系

我对文档有点困惑。让我们继续处理客户订单关系,其中一个客户可以有 n 个订单。

如果我为现有客户创建新订单并将其存储在

我希望这会更新客户(覆盖所有数据),因为我使用的是客户的 id。我猜,新订单#3 和#4 被创建为新订单并链接到客户,因为它们的订单ID 为0。但是我之前存储的订单(#1 和#2)会发生什么?他们是否与我的客户保持联系?或者这个链接是否也被覆盖并因此丢失?

0 投票
1 回答
59 浏览

objectbox - Objectbox 同步服务器配置故障排除

遵循https://sync.objectbox.io/objectbox-sync-server中的指南

我已经有我下载的 Objectbox 同步服务器文件

  1. 下载我的 Objectbox 同步服务器文件(我从 Objectbox Team 获得)并解压
  2. 将我的 objectbox-model.json(从我的颤振应用程序生成的文件)复制到提取的文件夹中

尝试

它给了我

  1. 创建配置文件 (sync-server-config.js) 包含:

  2. 并从该文件夹打开终端运行 ./sync-server

  3. 它返回我错误

我确实尝试过

删除,也给出同样的错误

我是 Objectbox 的新手,我想尝试使用同步部分,

您的帮助将不胜感激。谢谢

0 投票
1 回答
40 浏览

objectbox - 如何拥有多个相同类型的盒子?

我想将相同类型的信息存储在不同的框中。示例:一个盒子包含我喜欢的推文,另一个盒子包含我转发的推文。