生成 Swagger 时找不到 'Date' 类型 API

Cannot find 'Date' type when building Swagger generated API

我不确定 Haskell 中是否有内置的 Date 类型,这很难说,而且我找不到文档。

这是我的导入语句

import           Data.Aeson         (FromJSON (..), ToJSON (..), Value, genericParseJSON, genericToJSON)
import           Data.Aeson.Types   (Options (..), defaultOptions)
import           Data.Function      ((&))
import           Data.List          (stripPrefix)
import qualified Data.Map           as Map
import           Data.Maybe         (fromMaybe)
import           Data.Text          (Text)
import qualified Data.Text          as T
import           GHC.Generics       (Generic)

这是有问题的行

productionEntryProductionDate :: Date

这是我在尝试 运行 stack build

时遇到的错误

Not in scope: type constructor or class `Date'

我的代码来自 Web API 我从一些 Swagger 2.0 YAML 生成。

我是 Haskell 的新手,所以如果您需要更多信息,请告诉我。

Date 不是 Haskell 中的标准类型。您可以定义自己的,也可以使用 time library 中的 Day。无论哪种方式,您都需要自己为它定义 Aeson 实例。时间库有一个 parseTimeM 函数可以为您完成这项工作,但您仍然需要实例声明。

更正:原来Aeson已经有DayUTCTime两种类型的实例了。