问题标签 [flutter-moor]

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 回答
730 浏览

flutter-moor - Flutter-moor ORM 中是否有枚举列?

我没有找到任何关于 Flutter ORM moor 中 Enum 列中内置可能性的文档。创建枚举列的最佳方法是什么?我要这个:

0 投票
1 回答
267 浏览

flutter - 如何与 moor 一起实施 Change Notifier?

我正在尝试制作一个具有数据库的应用程序,它有一个学生表

现在我尝试将更改通知器与myDatabase一起使用,但在这里我无法扩展它,所以我尝试这样做

但是学生类显示错误。现在我不知道如何进行。

0 投票
2 回答
1075 浏览

flutter - 向颤动的沼泽查询添加不同的

我有以下颤动的沼泽查询

如何将distinct条件添加到查询中?

更新:我想写的查询是:

garnishName并且postGarnish是我RecipeGarnishes表中的列

更新 2:

根据答案,我尝试了这个。

但它给了我以下错误

Moor:发送 SELECT DISTINCT recipe_garnishes.garnish_name AS "recipe_garnishes.garnish_name" FROM recipe_garnishes WHERE recipe_garnishes.post_garnish = ?; 带参数 [1]

[错误:flutter/lib/ui/ui_dart_state.cc(166)] 未处理的异常:NoSuchMethodError:在 null 上调用了 getter 'garnishName'。

0 投票
2 回答
1624 浏览

flutter - Flutter moor:缺少 libsqlite3.so

我正在用 Moor 编写一个简单的 Flutter 应用程序;libsqlite3.so我已经创建了表、数据库和 dao,但是当我启动应用程序时,它会因找不到库的错误而崩溃。

这是我的数据库

这是我的错误

谢谢你的帮助。

0 投票
1 回答
830 浏览

flutter - Flutter、Moor 和 WorkManager

我正在开发一个颤振应用程序(当时仅适用于 Android,但计划稍后提供 iOS 支持)。该应用程序以两种方式运行:

  • Flutter UI 与大部分业务逻辑(前台隔离,以 main 方法开始)(FG)
  • 使用android WorkManager(使用Flutter Background Isolate)在后台执行的一些自动任务(BG)
  • 两个隔离都使用数据库

由于我们需要以“线程安全”的方式使用数据库,因此我们尝试使用 Moor 数据库框架,通过 moor_ffi 接口与 SQLite 服务器通信。

Moor 声称通过产生第三个 Isolate (MoorIsolate) 来实现它的“线程安全”。此隔离是唯一与数据库对话的隔离。在 BG 和 FG 中执行的查询使用 SendPort/ReceivePort 发送到此隔离,执行并返回给调用者隔离。

但是,所有 Moor 示例都建议从 FG 分离物中生成 MoorIsolate。这引起了我对以下问题的关注。

  1. 如果 FG Isolate “死亡”,MoorIsolate 会发生什么

    1.1 如果用户在导航器的最后一个屏幕上按返回按钮退出?

    1.2 如果APP一段时间不可见,操作系统决定释放内存。

    1.3 如果用户在设置中“强制杀死”应用程序(理想情况下,这应该是 MoorIsolate 死掉的唯一情况)

  2. 在 BG 隔离中,我们使用 IsolateNameServer 来构造 MoorIsolate。有什么方法可以检测 Isolate 是否仍在运行?

0 投票
1 回答
2193 浏览

flutter - build-runner 的 Flutter-moor 生成器问题

每当我尝试运行时,flutter packages pub run build_runner watch我都会在终端中收到此错误消息

这发生在我从 ^1.6.0 => ^ 3.0.0 更新 moor_flutter 插件之后 旧插件没有错误 这是我的代码

vs 代码在 Appdatabase 构造函数和 customselectstream 函数中给了我错误,但我在他们的 Github 存储库中搜索了示例,发现 Appdatabase 构造函数与我的相同。在我评论 watchusersbyname 后问题仍然存在,我也尝试从 Appdatabase 构造函数中的 super 中删除参数,但没有任何改变,所以你能告诉我有什么问题吗?提前致谢。

0 投票
1 回答
182 浏览

flutter - 将 base64 字符串转换为 Image 类并返回

我有一个简单的表,我想通过MOOR创建和维护它。下面是表定义:

如您所见,我有一个image字段,我想Image用于base64转换和返回。请注意,我指的是 Flutter Image 类,而不是小部件。我已经找到了在Image 小部件base64之间进行转换的主题,但从架构的角度来看,在数据层上使用小部件似乎并不正确。这是我到目前为止所做的:

正如你所看到的,我没有问题(我猜)实现Image转换base64,但是我很难base64实现Image.

0 投票
0 回答
208 浏览

sqlite - 如何在主页中使用提供程序实例化 Moor_Flutter 数据库(daos)?

当实例化从 MyHomePage() 路由的 NotificationsPage 时会发生这种情况

这是我的代码:

这是错误日志:

错误:在此 NotificationsPage 小部件上方找不到正确的提供程序

这可能是因为您使用了BuildContext不包括您选择的提供者的 a。有几种常见的场景:

  • 您尝试读取的提供程序位于不同的路径中。

    提供者是“范围的”。因此,如果您在路由中插入提供程序,那么其他路由将无法访问该提供程序。

  • 您使用的BuildContext是您尝试读取的提供程序的祖先。

    确保 NotificationsPage 在您的 MultiProvider/Provider 下。这通常发生在您创建提供程序并尝试立即读取它时。

    例如,而不是:

    考虑builder像这样使用:

关于这个主页有什么问题的任何建议?在通知页面中,我正在访问它

0 投票
1 回答
2245 浏览

flutter - 参数“id”是必需的。当 id 为自动增量时

当我尝试创建一个数据对象以保存在我的数据库中时,它给了我一个警告,说需要 id。但是,当添加到数据库时,应该由 moor 自动创建,因为它被标记为自动增量。我的表格代码是

忽略此警告是否安全?如果没有,我该怎么办?我创建数据对象的代码是

当用户输入倒计时名称时,我将填写名称字段。

0 投票
2 回答
1108 浏览

flutter - flutter moor 在迁移后添加初始数据

迁移实体并添加列后,我想在表中为新添加的列插入已存在记录的值。我怎样才能做到这一点?

例如,在这种情况下,对于数据库中已经存在的记录,我希望 DueDate 列的值为 DateTime(2019,1,1)。