Haskell 持久模式下的EntityField

Haskell 持久模式下的EntityField,haskell,yesod,Haskell,Yesod,有一个数据族EntityField ent typ,它是在类PersistEntity ent中定义的。 我应该在过滤器,选择选项等中使用它。但我找不到在运行时获取它的方法。我需要像这样的东西 data SomeEF e = forall typ. SomeEF { unSomeEF :: EntityField e typ } 及 我需要它的例子,使用户定义过滤器或订单的可能性动态 有什么地方存在吗?没有,现在没有这样的功能。你可以编写一个新的TH函数来生成它,或者理论上它可以通过泛型派生来

有一个数据族
EntityField ent typ
,它是在类
PersistEntity ent
中定义的。 我应该在
过滤器
选择选项
等中使用它。但我找不到在运行时获取它的方法。我需要像这样的东西

data SomeEF e = forall typ. SomeEF { unSomeEF :: EntityField e typ }

我需要它的例子,使用户定义过滤器或订单的可能性动态


有什么地方存在吗?

没有,现在没有这样的功能。你可以编写一个新的TH函数来生成它,或者理论上它可以通过
泛型
派生来实现,我不确定。

可能在持久化中做得更好(至少更简单)?你怎么认为?总有一天我会尝试去做的。我还需要Eq、Show、Read等实例。
getEntityFields :: PersistEntity e => e -> [SomeEF]