斯科蒂+;Html->;如何将它们交织在一起?

斯科蒂+;Html->;如何将它们交织在一起?,html,haskell,scotty,Html,Haskell,Scotty,如何在Scotty中使用html页面,包括html模板?但不是通过Blaze,因为我不喜欢用haskell代码描述它的结构。它认为我应该盗窃,但如何准确地将其与Scotty纠缠在一起?您可以使用heist.renderTemplate将模板转换为Blaze.ByteString.Builder.Builder(这不是Blaze html,我想这没问题),然后通过Web.Scotty.raw进行设置。例如: {-#语言重载字符串} 进口盗窃 进口盗窃案。解释 导入Web.Scotty(Scotty

如何在Scotty中使用html页面,包括html模板?但不是通过Blaze,因为我不喜欢用haskell代码描述它的结构。它认为我应该盗窃,但如何准确地将其与Scotty纠缠在一起?

您可以使用
heist.renderTemplate
将模板转换为
Blaze.ByteString.Builder.Builder
(这不是Blaze html,我想这没问题),然后通过
Web.Scotty.raw
进行设置。例如:

{-#语言重载字符串}
进口盗窃
进口盗窃案。解释
导入Web.Scotty(Scotty、get、raw、setHeader)
import Control.Monad.Trans.other(runEitherT)
导入控制.Monad.IO.Class(liftIO)
导入Blaze.ByteString.Builder(ToByTestString)
将限定的Data.ByteString.Lazy作为DBL导入
将限定的Data.Text.Lazy.Encoding导入为DT
导入Text.XmlHtml
main=scotty 3000$
获取“/”$do
--通常,您可能会从文件中加载模板,
--但要保持小规模的例子

(右heist)您可以使用
heist.renderTemplate
将模板转换为
Blaze.ByteString.Builder.Builder
(这不是Blaze html,我想没关系),然后通过
Web.Scotty.raw
进行设置。例如:

{-#语言重载字符串}
进口盗窃
进口盗窃案。解释
导入Web.Scotty(Scotty、get、raw、setHeader)
import Control.Monad.Trans.other(runEitherT)
导入控制.Monad.IO.Class(liftIO)
导入Blaze.ByteString.Builder(ToByTestString)
将限定的Data.ByteString.Lazy作为DBL导入
将限定的Data.Text.Lazy.Encoding导入为DT
导入Text.XmlHtml
main=scotty 3000$
获取“/”$do
--通常,您可能会从文件中加载模板,
--但要保持小规模的例子

(正确的抢劫)所以理论上我可以在Snap中使用完全相同的抢劫方式?@Mario我对Snap没有经验,但是如果你可以在请求时给它一个ByteString,当然。所以理论上我可以在Snap中使用完全相同的抢劫方式?@Mario我对Snap没有经验,但是如果你可以在请求时给它一个ByteString,当然