我正在尝试以与这些 Yesod 书籍示例isAdmin
类似的方式实现该功能。问题是我想将我的“管理员”电子邮件保留在数据库中,但是当我进行数据库查询时,失去了它的纯度,所以我必须返回而不是仅仅返回. 现在,这废弃了 hamlet 中允许这样做的非常好的语法糖:isAdmin
Handler-something IO Bool
Bool
$if isAdmin
<p ...
即使我调用数据库,有没有办法仍然拥有纯isAdmin
函数(我严重怀疑......顺便说一句,我不想将任何参数传递给isAdmin
)?或者也许我仍然可以将$if
语法与不纯函数一起使用?
PS:目前,我在处理程序模块中使用 hack:
isadmin <- isAdmin
因此,我可以在对应于该处理程序的 hamlet 中编写:
$if isadmin
但它不是通用的,我更喜欢第一种方法。