haskell – 禁用formlets / digestive-functors中的字段?

使用formlets / digestive-functors,我试图弄清楚如何在运行时选择性地禁用字段.禁用字段将禁用字段的显示以及验证.

受控示例:假设我们的基本表单数据类型如下所示:

data Info =
  Info {
     favcolor :: String,
     deptId   :: Int,
     company  :: String,
     agree    :: Boolean
  }

但是只有在用户是员工的情况下才会显示deptId字段,否则应显示公司字段.如果用户尚未点击“同意”框,则应显示同意字段.

我不想为每个可能的变体创建不同的表单类型:(favcolor,deptId,agree),(favcolor,deptId),(favcolor,company,agree),(favcolor,company).我还可以做些什么?

最佳答案 我认为这打破了消化仿函数模型,无法完成.但它会提出一个很好的功能要求!

点赞