【发布时间】:2020-08-20 14:15:00
【问题描述】:
在我的旧 Vapor 3 代码中,我正在创建这样的模型:
address.create(on: conn).flatMap { savedAddress in
// do something with saved address
}
在 Vapor 4 文档的帮助下,我现在将 db 传递给 create 函数而不是连接。问题是,似乎 flatMap 返回 Void,因为当我尝试访问 savedAddress 时出现以下错误:“元组类型 'Void' 的值没有成员......”。
我应该如何重写这个?
【问题讨论】:
-
嘿,你可以在 Discord 中找到我
iMike#3049,我会帮助你迁移到 Vapor 4 -
由于 Fluent4 在创建新记录时返回
Void,解决方法是提前将 id 设置为新记录,然后通过id从数据库中检索该记录。 -
这听起来像是倒退了一步,这在 v3 中要容易得多。真的没有更好的解决方案吗?
-
如果您更喜欢纯 SQL,那么我可以建议 Bridges github.com/SwifQL/Bridges
-
我想我会等几天升级服务器,直到有官方的 fluent 升级指南。如果我仍然有问题,我会接受你的提议来帮助我。非常感谢你。
标签: vapor vapor-fluent