我有以下架构:
share [ mkPersist sqlSettings, mkMigrate "migrateAll" ] [persistLowerCase|
AdminChan
timestamp T.Text
name T.Text
msg T.Text
BanHost
timestamp T.Text
host T.Text
isBanned Bool
reason T.Text
|]
现在说我想admin_chan
以[AdminChan]
. 我怎样才能做到这一点?我有这个功能:
dumpDbTbl :: SqlPersistT IO [AdminChan]
dumpDbTbl = map entityVal <$> (select . from $ return)
1)但是我如何[AdminChan]
从SqlPersistT IO
堆栈中取出?(请注意,我没有使用yesod
.)
2)另外,是否可以重写上述函数,使其成为多态并且也可以与BanHost
表一起使用?
3) 我如何编写一个函数,使用esqueleto
,将返回表中的记录数?
谢谢!