0

我设法用 MongoDB 设置 Vapor 并让它工作,但如果我做一个新的干净项目,我会从 MongoKitten 收到运行时错误。详细地:

我有一个过时的蒸汽项目,从 2017 年 7 月 27 日开始运行良好。我现在在 24/10/2017 做同样的项目。当它第一次编译时,我收到以下警告(不知道是否与以下错误有关):

警告截图

编译完成,运行项目时出现以下错误:

错误截图

我只知道这是由 main.swift 中的准备步骤引起的,例如:

config.preparations.append(User.self)

如果没有这一步,我不会收到任何运行时错误(但与 mongodb 的流畅连接也无法正常工作)。

我的配置很简单:

配置截图

这发生在 Swift 3.1.1 中,但同样发生在 Swift 4.0 中。环境是 Ubuntu 17.04。

我该如何解决这个问题?

4

1 回答 1

0

MongoDB 的$addFields阶段需要MongoDB 3.4 或更高版本(我们几乎是 3.6,所以 3.4 是最新版本)。我假设您正在运行 MongoDB 3.2 或更低版本。Ubuntu 的官方 APT 存储库长期以来一直落后于官方 MongoDB 版本。一些 ubuntu 版本仍将安装已弃用的 2.6 版本的 MongoDB。

解决方案是按照此处所述安装官方最新的 MongoDB 服务器

于 2017-11-04T19:50:27.043 回答