2
Heist 템플릿을 사용하여 간단한 Snap 앱을 구성하고 있습니다. 요청 URL을 페이지에 인쇄하고 싶습니다. 그러나, 내 스플 라이스를 실행하는 대신 출력에는 스플 라이스 태그 만 있습니다. 내 앱과 내가 찾은 튜토리얼간에 차이점을 찾을 수 없기 때문에 간단한 것을 간과 한 것 같다.Snap/Heist 앱으로 런타임 스플 라이스 통합
Site.hs :
{-# LANGUAGE OverloadedStrings #-}
module Site
(app
) where
import Data.Monoid
import Snap.Core
import Snap.Snaplet
import Snap.Snaplet.Heist
import Heist
import Application
import Control.Monad.Trans.Class (lift)
import Data.Text.Encoding (decodeUtf8)
import qualified Text.XmlHtml as X
currentPath :: SnapletISplice App
currentPath = do
requestPath <- lift $ withRequest (return . rqURI)
return [X.TextNode $ decodeUtf8 requestPath]
app :: SnapletInit App App
app = makeSnaplet "andrewlorente" "My wubsite" Nothing $ do
let config = mempty {
hcInterpretedSplices = "currentPath" ## currentPath
}
h <- nestSnaplet "heist" heist $ heistInit' "templates" config
return $ App h
한편, index.tpl :
<currentPath />
지금까지 내가 말할 수있는
는, 루트 경로를 방문에서 렌더링 된 출력/수 있어야 뭔가
/
같은
하지만 사실은
입니다.<currentPath></currentPath>
나는 왜 내 스플 라이스가 작동하지 않는지 알아 내려고 노력하고 있습니다.
또한 템플릿을 HeistConfig에 포함시켜야합니다. – mightybyte