#yesod
#yesod
Вопрос:
Я следую вместе с учебным пособием по yesod на yesod wiki и натыкаюсь на ссылку на внешнюю структуру css (blueprint).
Я создал сайт с помощью инструмента scaffolding, и до сих пор все работало правильно, используя «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:
Вам это нужно touch Settings/StaticFiles.hs
? В общем, yesod devel
or yesod build
обработает это для вас автоматически, но это первое, что приходит на ум.
Комментарии:
1. Это сработало, спасибо Майклу. Я не уверен, почему это не было обработано автоматически, но посмотрим, смогу ли я понять это, когда узнаю больше.
2. У меня такая же проблема, Майкл. Я помещаю свой файл main.css в папку static / css, но Yesod его не видит, и я получаю сообщение об ошибке: не в области видимости: ‘css_main_css’. Что я могу сделать?
3. @DenisShevchenko вы пробовали то, что предложил мой ответ, и
touch Settings/StaticFiles.hs
?