Fixed hellotemplate example

This commit is contained in:
Michael Snoyman 2010-04-11 23:23:29 -07:00
parent ef3e7cc538
commit c5841f762d
2 changed files with 14 additions and 12 deletions

View File

@ -1,29 +1,32 @@
\begin{code} \begin{code}
{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeFamilies #-}
import Yesod import Yesod
import Network.Wai.Handler.SimpleServer import Network.Wai.Handler.SimpleServer
data HelloWorld = HelloWorld TemplateGroup data HelloWorld = HelloWorld TemplateGroup
mkYesod "HelloWorld" [$parseRoutes|
/ Home GET
/groups Group GET
|]
instance Yesod HelloWorld where
approot _ = "http://localhost:3000"
instance YesodTemplate HelloWorld where instance YesodTemplate HelloWorld where
getTemplateGroup (HelloWorld tg) = tg getTemplateGroup (HelloWorld tg) = tg
defaultTemplateAttribs _ _ = return defaultTemplateAttribs _ _ = return
. setHtmlAttrib "default" "<DEFAULT>" . setHtmlAttrib "default" "<DEFAULT>"
instance Yesod HelloWorld where
resources = [$mkResources|
/:
Get: helloWorld
/groups:
Get: helloGroup
|]
helloWorld :: Handler HelloWorld RepHtml getHome :: Handler HelloWorld RepHtml
helloWorld = templateHtml "template" $ return getHome = templateHtml "template" $ return
. setHtmlAttrib "title" "Hello world!" . setHtmlAttrib "title" "Hello world!"
. setHtmlAttrib "content" "Hey look!! I'm <auto escaped>!" . setHtmlAttrib "content" "Hey look!! I'm <auto escaped>!"
helloGroup :: YesodTemplate y => Handler y RepHtmlJson getGroup :: YesodTemplate y => Handler y RepHtmlJson
helloGroup = templateHtmlJson "real-template" (cs "bar") $ \ho -> getGroup = templateHtmlJson "real-template" (cs "bar") $ \ho ->
return . setHtmlAttrib "foo" ho return . setHtmlAttrib "foo" ho
main :: IO () main :: IO ()

View File

@ -5,7 +5,6 @@
import Yesod import Yesod
import Network.Wai.Handler.SimpleServer import Network.Wai.Handler.SimpleServer
import qualified Web.Routes.Quasi
data HelloWorld = HelloWorld data HelloWorld = HelloWorld