Yesod:卡在书里 "Seven Web frameworks in seven weeks"

Yesod: Stuck in book "Seven Web frameworks in seven weeks"

我按照quick start guide安装了Yesod。

我买了这本书 "Seven Web frameworks in seven weeks",我正在努力跟进。我在第 204 页(第 1 天:使用模型)。当我输入

ghci Model.hs

为了向数据库中输入一些数据,正如书上所说,我得到了这个:

GHCi,版本 7.8.3:http://www.haskell.org/ghc/ :?求助
加载包 ghc-prim ... 链接 ... 完成。
正在加载包 integer-gmp ... 链接 ... 完成。
加载包基础...链接...完成。

Model.hs:3:8:
    找不到模块“ClassyPrelude.Yesod”
    使用 -v 查看搜索的文件列表。

Model.hs:4:8:
    找不到模块“Database.Persist.Quasi”
    使用 -v 查看搜索的文件列表。
失败,加载模块:none。

我卡住了。我是 Haskell(但不是新手)和 Yesod 的新手,所以我不知道该怎么做。

提前致谢。

您似乎没有安装 classy-prelude-yesod 软件包。如果你安装了 cabal,你可以很容易地安装任何缺少的包。为此,您可以在 OS 命令提示符下输入以下内容:

cabal install classy-prelude-yesod

如果您缺少任何其他包,可以使用相同的方法。

本快速入门指南中的说明引导您为您的项目创建一个沙箱,因此您安装的依赖项仅在该沙箱中可用(这是谨慎且可以说是正确的方法,避免冲突和缓和清理)。 GHCi 是 GHC 的一部分并且不知道沙箱(这是一个仅来自 cabal 的概念)。

要在沙盒中启动交互式 shell 从项目的根目录启动 cabal repl,如果 Model.hs 在 src 中,则使用 :load src/Model.hs