toFields provides a convenient typeclass wrapper around the
Field_ creation functions in
Opaleye.SqlTypes. Besides
convenience it doesn't provide any additional functionality.
It can be used with functions like
runInsert to insert custom
Haskell types into the database. The following is an example of a
function for inserting custom types.
customInsert
:: ( Default ToFields haskells fields )
=> Connection
-> Table fields fields'
-> [haskells]
-> IO Int64
customInsert conn table haskells = runInsert_ conn Insert {
iTable = table
, iRows = map toFields haskells
, iReturning = rCount
, iOnConflict = Nothing
}
In order to use this function with your custom types, you need to
define an instance of
Default ToFields for your custom
types.