4

我看了一个以前的问题,听起来像是同一个问题,但它似乎跳过了我必须遗漏的部分。

import Settings.StaticFiles在处理程序文件的顶部添加了这一行。

我将一个名为的文件复制chunk.pngstatic了 yesod 项目的文件夹中。

但是,无论我尝试什么,我总是得到:

不在范围内:'chunk_png'

我尝试在 whamlet 之前添加staticSite "static"or $(staticSite "static"),但无济于事。

这是完整的代码:

module Handler.Foo where

import Import
import Data.List
import Settings.StaticFiles

getFooR :: Int -> Int -> Handler Html
getFooR param1 param2 = do
    staticSite "static"
    defaultLayout [whamlet|
        <img src=@{StaticR chunk_png}>
    |]

我也尝试过staticFiles "static"(而不是staticSite),但这给了我错误:

不在范围内:“staticFiles”也许您的意思是“staticSite”(从 Settings.StaticFiles 导入)

in有一个条目。/static StaticR Static getStaticconfig/routes

有任何想法吗?

4

1 回答 1

4

我的解决方案是添加

import Yesod.Static

在文件的顶部,和

staticFiles "static"

处理函数声明之前,而不是在它里面。

于 2013-11-25T16:40:52.863 回答