2011-11-24 61 views
2

我一直在寻找一个使用Haskell记录存储到MongoDB数据库的ORM。MongoDB Haskell ORM

HaskellWiki有a list of some libraries哪些不一定是ORM。

Persistent是最接近我需要的,但它很大程度上取决于模板哈斯克尔,我不想。我只想将普通的Haskell记录映射到数据库。

+0

也许挑剔,但ORM是面向对象语言的概念吧? – jberryman

+2

您可以使用[mongoDB软件包](http://hackage.haskell.org/package/mongoDB),然后在其周围添加一个相当简单的数据类型转换包装,类似于[aeson](http:// hackage。 haskell.org/package/aeson)用类似ToMongo和FromMongo类的类来完成它。我知道这不是你正在寻找的答案,但它不会太多工作。 – mightybyte

+0

Haskell具有Picklers的概念,它有点像ORM(并且不是)。 json/bson的Pickler combinator库会很好。 :) – ExternalReality

回答

5

您可以使用Persistent而不使用模板Haskell,您只需手动定义PersistEntity实例。有些人目前正在为TH无法使用的情况(例如ghc-iphone)进行此操作。