链接到Yesod 0.9.3.2中的静态css

时间:2011-10-15 21:22:13

标签: yesod

我正在关注yesod wiki上的yesod教程,并点击链接到外部css框架(蓝图)的墙。

我使用脚手架工具创建了网站,到目前为止,所有内容都使用'yesod devel'正常工作。

我已将蓝图文件下载到static / css / blueprint中,并将以下内容添加到default-layout-wrapper.hamlet中:

!!!
<html>
    <head
        <title>#{pageTitle pc}
        <link rel=stylesheet type=text/css media=screen href=@{StaticR css_blueprint_screen_css}>
        <link rel=stylesheet type=text/css media=print href=@{StaticR css_blueprint_print_css}>
        ^{pageHead pc}
    <body
        ^{pageBody pc}

我得到的错误是:

Foundation.hs:98:27:
    Not in scope: `css_blueprint_screen_css'
    In the result of the splice:
      $(hamletFile "hamlet/default-layout-wrapper.hamlet")
    To see what the splice expanded to, use -ddump-splices
    In the first argument of `hamletToRepHtml', namely
      `$(hamletFile "hamlet/default-layout-wrapper.hamlet")'
    In the expression:
      hamletToRepHtml
        ($(hamletFile "hamlet/default-layout-wrapper.hamlet"))

Foundation.hs:98:27:
    Not in scope: `css_blueprint_print_css'
    In the result of the splice:
      $(hamletFile "hamlet/default-layout-wrapper.hamlet")
    To see what the splice expanded to, use -ddump-splices
    In the first argument of `hamletToRepHtml', namely
      `$(hamletFile "hamlet/default-layout-wrapper.hamlet")'
    In the expression:
      hamletToRepHtml
        ($(hamletFile "hamlet/default-layout-wrapper.hamlet"))
Starting development server...

我在Mac上,运行ghc-7.0.3 ......我以为我理解StaticR是如何工作的,但我显然错过了一些东西。有什么想法吗?

提前致谢, 尼尔

1 个答案:

答案 0 :(得分:7)

您需要touch Settings/StaticFiles.hs吗?一般情况下,yesod develyesod build会自动为您处理,但这是首先想到的。