我正在尝试在命令中使用 Fluent,但我遇到了这个问题:
在这个查询中:
let location: Location? = try? Location.query(on: context.application.db).filter(\.geId == 123).first().wait()
我得到:
Type of expression is ambiguous without more context"
当我删除过滤器时,一切都很好:
let location: Location? = try? Location.query(on: context.application.db).first().wait()
当我使 var 非可选时:
let location: Location = try? Location.query(on: context.application.db).filter(\.geId == 123).first().wait()
我得到:
Cannot convert value of type 'Location?' to specified type 'Location'
相同的查询正在使用flatMap而不是wait()处理 Route
所以,我有点困惑。我的错误在哪里?