在Yesod中,我有一个填充类型的表单
data Field = Field Text Text text
deriving Show
当我编写hamlet html来显示它时,我遇到了可能Maybe Field
中包含Field的问题。所以在哈姆雷特,我试图按照here
(postHomeR函数中的片段)
let fieldData = case result of
FormSuccess res -> Just res
_ -> Nothing
(在小村文件中)
<ul>
$maybe (Field one two three) <- fieldData
<li>#{show one}
但是,编译时出现Not in scope: one
错误。为什么变量没有正确创建/填充?
答案 0 :(得分:3)
你需要缩进&lt; li&gt;所以它在$ maybe块里面。就像它现在一样,它可能是$ maybe的兄弟,因此由$绑定的变量可能不在范围内。