Yesod:卡在“七周内的七个 Web 框架”一书中
Posted
技术标签:
【中文标题】Yesod:卡在“七周内的七个 Web 框架”一书中【英文标题】:Yesod: Stuck in book "Seven Web frameworks in seven weeks" 【发布时间】:2015-05-01 18:16:45 【问题描述】:我按照quick start guide安装了Yesod。
我买了《七周内的七个 Web 框架》这本书,我正在努力学习。我在第 204 页(第 1 天:使用模型)。当我进入
ghci Model.hs
为了将一些数据输入数据库,正如书中所说,我得到了这个:
GHCi,版本 7.8.3:http://www.haskell.org/ghc/ :?求助 加载包 ghc-prim ... 链接 ... 完成。 加载包 integer-gmp ... 链接 ... 完成。 正在加载包库...链接...完成。 模型.hs:3:8: 找不到模块“ClassyPrelude.Yesod” 使用 -v 查看搜索的文件列表。 模型.hs:4:8: 找不到模块“Database.Persist.Quasi” 使用 -v 查看搜索的文件列表。 失败,加载模块:无。我被困住了。我是 Haskell 的新手(但不是新手)和 Yesod,所以我不知道该怎么做。
提前致谢。
【问题讨论】:
你能给我们这些没有这本书的人提供更多的细节,那么我们也许可以帮助你...... 我认为将文本作为图像发布很烦人,但将文本作为视频发布,现在那很烦人。 我建议你在没有掌握 Haskell 的情况下避免学习 Yesod。 【参考方案1】:本快速入门指南中的说明引导您为项目创建沙箱,因此您安装的依赖项仅在此沙箱中可用(这是谨慎且可以说是正确的方法,避免冲突并简化清理)。 GHCi 是 GHC 的一部分,不知道沙箱(这是一个概念,仅适用于 cabal
)。
要在沙盒中启动交互式 shell,请从项目的根目录启动 cabal repl
,如果 Model.hs 在 src 中,则使用 :load src/Model.hs
。
【讨论】:
【参考方案2】:您似乎没有安装 classy-prelude-yesod 包。如果您安装了 cabal,您可以轻松安装任何缺少的软件包。为此,您可以在操作系统命令提示符下输入以下内容:
cabal install classy-prelude-yesod
如果您缺少任何其他包,您可以使用相同的方法。
【讨论】:
使用cabal install --only-dependencies
安装所有缺少的依赖项。
我做到了,它说一切都已安装。
你尝试安装classy-prelude-yesod吗?安装后是否出现同样的错误?以上是关于Yesod:卡在“七周内的七个 Web 框架”一书中的主要内容,如果未能解决你的问题,请参考以下文章