Better generateFormPost

This commit is contained in:
Michael Snoyman 2012-04-02 18:32:53 +03:00
parent fa1a03d420
commit 1b985796ec
2 changed files with 5 additions and 3 deletions

View File

@ -55,6 +55,8 @@ import Data.Maybe (listToMaybe, fromMaybe)
import Yesod.Message (RenderMessage (..)) import Yesod.Message (RenderMessage (..))
import qualified Data.Map as Map import qualified Data.Map as Map
import qualified Data.ByteString.Lazy as L import qualified Data.ByteString.Lazy as L
import Control.Applicative ((<$>))
import Control.Arrow (first)
-- | Get a unique identifier. -- | Get a unique identifier.
newFormIdent :: MForm sub master Text newFormIdent :: MForm sub master Text
@ -197,8 +199,8 @@ postHelper form env = do
generateFormPost generateFormPost
:: RenderMessage master FormMessage :: RenderMessage master FormMessage
=> (Html -> MForm sub master (FormResult a, xml)) => (Html -> MForm sub master (FormResult a, xml))
-> GHandler sub master ((FormResult a, xml), Enctype) -> GHandler sub master (xml, Enctype)
generateFormPost form = postHelper form Nothing generateFormPost form = first snd <$> postHelper form Nothing
postEnv :: GHandler sub master (Maybe (Env, FileEnv)) postEnv :: GHandler sub master (Maybe (Env, FileEnv))
postEnv = do postEnv = do

View File

@ -12,7 +12,7 @@ import Import
-- inclined, or create a single monolithic file. -- inclined, or create a single monolithic file.
getHomeR :: Handler RepHtml getHomeR :: Handler RepHtml
getHomeR = do getHomeR = do
((_, formWidget), formEnctype) <- generateFormPost sampleForm (formWidget, formEnctype) <- generateFormPost sampleForm
let submission = Nothing :: Maybe (FileInfo, Text) let submission = Nothing :: Maybe (FileInfo, Text)
handlerName = "getHomeR" :: Text handlerName = "getHomeR" :: Text
defaultLayout $ do defaultLayout $ do