Ссылка на статический CSS в Yesod 0.9.3.2 - PullRequest
2 голосов
/ 16 октября 2011

Я следую учебному пособию по Yesod на вики-сайте 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 Ответ

7 голосов
/ 16 октября 2011

Вам нужно touch Settings/StaticFiles.hs?В общем, yesod devel или yesod build будут обрабатывать это автоматически, но это первое, что приходит на ум.

...