事实上,你自己构建了元组。确实:
previousLogItems <- select $ from $ \li -> do
orderBy [desc (li ^. LogItemId)]
limit 10
return (li ^. LogItemId, li ^. LogItemTitle)
因此,您可以使用(^.) :: (PersistEntity val, PersistField typ) => expr (Entity val) -> EntityField val typ -> expr (Value typ)
“选择器”来获取字段并将它们包装成一个元组。
如果你这样写:
previousLogItems >- select $ from $ \li -> do
orderBy [desc (li ^. LogItemId)]
limit 10
return li
您将获得您查询[Entity Foo]
的Foo
对象类型的列表。
您可以使用entityVal :: Entity a -> a
来获取包装到 中的实体,Entity
例如:
previousLogItems <- select $ from $ \li -> do
orderBy [desc (li ^. LogItemId)]
limit 10
return li
mapM_ (print . entityVal) previousLogItems
鉴于实体当然是Show
.