链接到Yesod 0.9.3.2中的静态css

Nei*_*eil 2 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}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

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...
Run Code Online (Sandbox Code Playgroud)

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

尼尔,提前谢谢

Mic*_*man 7

你需要touch Settings/StaticFiles.hs吗?一般来说,yesod develyesod build将自动为您处理,但这是首先想到的.