我对Yesod有下一个问题。我想在我的 HTML 上制作自己的表单,因为我想要自己的标签和标签,但问题是如果我的表单是使用下一个代码自动生成的,我该怎么做:
entryForm :: Form Post
entryForm = renderDivs $ Post
<$> areq textField "name" Nothing
<*> areq textField "text" Nothing
<*> areq timeField "hour" Nothing
我的处理程序是:
getPostNewR :: Handler RepHtml
getPostNewR = do
(postWidget, enctype) <- generateFormPost entryForm
defaultLayout $ do
$(widgetFile "post_new")
我的 post_new.hamlet 文件是这样的:
<form method=post enctype=#{enctype}>
^{postWidget}
<div>
<input type=submit value="Create Post">
我希望我的表单以这种方式显示:
<form method="post" id="form_new_post" action="/post/new_do">
<h4>Name:</h4>
<div class="form-group">
<textarea name="name" id="post_name" class="form-control" autofocus="autofocus"></textarea>
</div>
<h4>Text:</h4>
<div class="form-group">
<textarea name="text" id="post_text" class="form-control"></textarea>
</div>
<input type=submit value="Create Post">
</form>
但这需要一个带有标记的标签,如下所示:
<input type="hidden" name="_token" value="ETjYBzdwQ1">
我如何生成此令牌值或如何更改我的 entryForm 来做到这一点?
感谢您的宝贵时间,非常感谢您的帮助