use redirect after post
This commit is contained in:
parent
8768ed8775
commit
4975257dcb
3 changed files with 8 additions and 10 deletions
|
@ -22,6 +22,6 @@ executable noodle
|
|||
-- other-extensions:
|
||||
build-depends: base >=4.7 && <4.8, scotty, blaze-html, monads-tf,
|
||||
persistent, persistent-sqlite, time, transformers,
|
||||
persistent-template, resourcet
|
||||
persistent-template, resourcet, text
|
||||
hs-source-dirs: src
|
||||
default-language: Haskell2010
|
||||
|
|
|
@ -11,11 +11,11 @@ render (pollId, pollName, pollDesc) options = do
|
|||
H.html $ do
|
||||
H.body $ do
|
||||
H.h3 "Show of poll"
|
||||
H.h5 "Name:"
|
||||
H.h4 "Name:"
|
||||
H.p $ toHtml pollName
|
||||
H.h5 "Description"
|
||||
H.h4 "Description"
|
||||
H.p $ toHtml pollDesc
|
||||
H.h5 "Options"
|
||||
H.h4 "Options"
|
||||
H.ul $ do
|
||||
mapM_ renderLn options
|
||||
H.br
|
||||
|
|
10
src/main.hs
10
src/main.hs
|
@ -18,6 +18,8 @@ import Database.Persist.Sqlite
|
|||
import Database.Persist.TH
|
||||
import Control.Monad.IO.Class (liftIO)
|
||||
import Data.Time
|
||||
import Data.Text.Lazy as T (pack)
|
||||
import Data.Monoid (mconcat)
|
||||
|
||||
import qualified Noodle.Views.Index
|
||||
import qualified Noodle.Views.Show
|
||||
|
@ -60,16 +62,12 @@ scottySite = do
|
|||
name <- S.param "name"
|
||||
desc <- S.param "desc"
|
||||
createPoll name desc
|
||||
polls <- liftIO $ allPolls
|
||||
blaze $ Noodle.Views.Index.render $ pollNames $ polls
|
||||
S.redirect "/"
|
||||
S.post "/options/" $ do
|
||||
name <- S.param "name" :: S.ActionM String
|
||||
pId <- S.param "id":: S.ActionM String
|
||||
createOption pId name
|
||||
poll <- liftIO $ getPollById pId
|
||||
options <- liftIO $ getOptionsByPollId pId
|
||||
blaze $ Noodle.Views.Show.render (pollValues $ head poll)
|
||||
(optionsValues options)
|
||||
S.redirect $ T.pack $ "/polls/" ++ pId
|
||||
|
||||
initDb = do
|
||||
runSqlite "noodle.db" $ do
|
||||
|
|
Loading…
Reference in a new issue