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