apiary-persistent-1.0.0: persistent support for apiary web framework.

Safe HaskellNone
LanguageHaskell2010

Web.Apiary.Database.Persist

Contents

Synopsis

Documentation

initializer

type With c m = forall a. (c -> m a) -> m a Source

initPersist :: (MonadIO m, MonadBaseControl IO m) => With SqlBackend (LogWrapper exts m) -> Migration -> Initializer m exts (Persist : exts) Source

construct persist extension initializer with no connection pool.

example:

initPersist (withSqliteConn "db.sqlite") migrateAll

low level

initPersist' :: (MonadIO n, MonadBaseControl IO n, Monad m) => (forall a. m a -> n a) -> (forall a. Extensions exts -> n a -> m a) -> With SqlBackend n -> Migrator -> Initializer m exts (Persist : exts) Source

initPersistPool' :: (MonadIO n, MonadBaseControl IO n, Monad m) => (forall a. m a -> n a) -> (forall a. Extensions exts -> n a -> m a) -> With ConnectionPool n -> Migrator -> Initializer m exts (Persist : exts) Source

query

runSql :: (Has Persist exts, MonadBaseControl IO m) => SqlPersistT (ActionT exts prms m) a -> ActionT exts prms m a Source

execute sql in action.

filter

sql Source

Arguments

:: (Has Persist exts, MonadBaseControl IO actM, NotMember k prms) 
=> Maybe Html

documentation.

-> proxy k 
-> SqlPersistT (ActionT exts prms actM) a 
-> (a -> Maybe b)

result check function. Nothing: fail filter, Just a: success filter and add parameter.

-> ApiaryT exts ((k := b) : prms) actM m () 
-> ApiaryT exts prms actM m () 

filter by sql query. since 0.9.0.0.