我试图让博客示例运行,但是某些处理函数中的类型存在问题,我不知道如何修复它.
我试图运行的例子发布在这里: Yesod博客示例 我改变了一点,我将类型添加到defaultLayout函数并使其成为Yesod的实例以摆脱双重定义.
defLayout :: GWidget a Blog () -> GHandler a Blog RepHtml
defLayout inside = do
mmsg <- getMessage
pc <- widgetToPageContent $ do
toWidget [lucius|
body {
width: 760px;
margin: 1em auto;
font-family: sans-serif;
}
textarea {
width: 400px;
height: 200px;
}
#message {
color: #900;
}
|]
inside
hamletToRepHtml [hamlet|
$doctype 5
<html>
<head>
<title>#{pageTitle pc}
^{pageHead pc}
<body>
$maybe msg <- mmsg
<div #message>#{msg}
^{pageBody pc}
|]
instance Yesod Blog where
approot = ApprootStatic …Run Code Online (Sandbox Code Playgroud)