runNoLoggingT
has the type
runNoLoggingT :: NoLoggingT m a -> m a
and it's a valid MonadLogger
so long as m
above is an instance of MonadIO
. All of the following stacks are instances of MonadIO
SqlPersist (ResourceT IO)
ResourceT IO
IO
So all of the following stacks are valid instances of MonadLogger
NoLoggingT (SqlPersist (ResourceT IO))
SqlPersist (NoLoggingT (ResourceT IO))
SqlPersist (ResourceT (NoLoggingT IO))
I'd recommend the third, then we just edit
runDb :: SqlPersist (ResourceT (NoLoggingT IO)) a -> IO a
runDb = runNoLoggingT
. runResourceT
. withSqliteConn "dev.app.sqlite3"
. runSqlConn