Safe Haskell | None |
---|---|
Language | Haskell2010 |
Since: 2.13.0.0
Synopsis
- data FieldDef
- setFieldAttrs :: [ FieldAttr ] -> FieldDef -> FieldDef
- overFieldAttrs :: ([ FieldAttr ] -> [ FieldAttr ]) -> FieldDef -> FieldDef
- addFieldAttr :: FieldAttr -> FieldDef -> FieldDef
- isFieldNullable :: FieldDef -> IsNullable
- isFieldMaybe :: FieldDef -> Bool
- isFieldNotGenerated :: FieldDef -> Bool
- isHaskellField :: FieldDef -> Bool
-
data
FieldCascade
=
FieldCascade
{
- fcOnUpdate :: !( Maybe CascadeAction )
- fcOnDelete :: !( Maybe CascadeAction )
- renderFieldCascade :: FieldCascade -> Text
- renderCascadeAction :: CascadeAction -> Text
- noCascade :: FieldCascade
-
data
CascadeAction
- = Cascade
- | Restrict
- | SetNull
- | SetDefault
The
FieldDef
type
A
FieldDef
represents the inormation that
persistent
knows about
a field of a datatype. This includes information used to parse the field
out of the database and what the field corresponds to.
Instances
Eq FieldDef Source # | |
Ord FieldDef Source # | |
Defined in Database.Persist.Types.Base |
|
Read FieldDef Source # | |
Show FieldDef Source # | |
Lift FieldDef Source # | |
Setters
overFieldAttrs :: ([ FieldAttr ] -> [ FieldAttr ]) -> FieldDef -> FieldDef Source #
Modify the list of field attributes.
Since: 2.13.0.0
addFieldAttr :: FieldAttr -> FieldDef -> FieldDef Source #
Add an attribute to the list of field attributes.
Since: 2.13.0.0
Helpers
isFieldNullable :: FieldDef -> IsNullable Source #
Check if the field definition is nullable
Since: 2.13.0.0
isFieldMaybe :: FieldDef -> Bool Source #
Check if the field is `Maybe a`
Since: 2.13.0.0
isFieldNotGenerated :: FieldDef -> Bool Source #
isHaskellField :: FieldDef -> Bool Source #
FieldCascade
data FieldCascade Source #
This datatype describes how a foreign reference field cascades deletes or updates.
This type is used in both parsing the model definitions and performing
migrations. A
Nothing
in either of the field values means that the
user has not specified a
CascadeAction
. An unspecified
CascadeAction
is defaulted to
Restrict
when doing migrations.
Since: 2.11.0
FieldCascade | |
|
Instances
renderFieldCascade :: FieldCascade -> Text Source #
Renders a
FieldCascade
value such that it can be used in SQL
migrations.
Since: 2.11.0
renderCascadeAction :: CascadeAction -> Text Source #
Render a
CascadeAction
to
Text
such that it can be used in a SQL
command.
Since: 2.11.0
noCascade :: FieldCascade Source #
A
FieldCascade
that does nothing.
Since: 2.11.0
data CascadeAction Source #
An action that might happen on a deletion or update on a foreign key change.
Since: 2.11.0