我正在使用基于yesod-postgres
堆栈模板的yesod应用程序。我在config/routes
中定义了一个路径,其格式为:
foo/edit/#Text EditFooR GET
在我的hamlet模板中,我想写
<form method=post action=@{EditFooR}#forms enctype=#{formEnctype}>
^{formWidget}
<button type="submit">
Submit
在我的处理程序中,我想写一下:
getEditFooR :: T.Text -> Handler Html
getEditFooR name = do
....
text <- findTextByName name
(formWidget, formEnctype) <- generateFormPost (editFooForm text)
defaultLayout $ do
$(widgetFile "editFoo")
除了我需要为@{EditFooR}
路由提供参数。如何在哈姆雷特文件/处理程序中完成?
答案 0 :(得分:0)
答案是.hamlet模板的格式应为:
<form method=post action=@{EditFooR fooName}#forms enctype=#{formEnctype}>
^{formWidget}
<button type="submit">
Submit
并且Handler
的格式应为:
getEditFooR :: T.Text -> Handler Html
getEditFooR name = do
....
text <- findTextByName name
fooName <- "something or other"
(formWidget, formEnctype) <- generateFormPost (editFooForm text)
defaultLayout $ do
$(widgetFile "editFoo")