Column class

Metadata to describe the behavior of the underlying database column of a persistent property in ManagedObject subclasses.

By default, declaring a property in a table definition will make it a database column and its database column will be derived from the property's type. If the property needs additional directives - like indexing or uniqueness - it should be annotated with an instance of this class.

    class User extends ManagedObject<_User> implements _User {}
    class _User {
      @primaryKey
      int id;

      @Column(indexed: true, unique: true)
      String email;
    }

Constructors

Column({ManagedPropertyType? databaseType, bool primaryKey = false, bool nullable = false, String? defaultValue, bool unique = false, bool indexed = false, bool omitByDefault = false, bool autoincrement = false, List<Validate> validators = const [], bool? useSnakeCaseName, String? name})
Creates an instance of this type.
const

Properties

autoincrement → bool
A sequence generator will be used to generate the next value for this column when a row is inserted.
final
databaseType → ManagedPropertyType?
The type of the field in the database.
final
defaultValue → String?
The default value of the property.
final
hashCode → int
The hash code for this object.
no setterinherited
isIndexed → bool
Whether or not the backing database should generate an index for this property.
final
isNullable → bool
Indicates whether or not the property can be null or not.
final
isPrimaryKey → bool
When true, indicates that this property is the primary key.
final
isUnique → bool
Whether or not the property is unique among all instances.
final
name → String?
The name of the underlying column in table.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
shouldOmitByDefault → bool
Whether or not fetching an instance of this type should include this property.
final
useSnakeCaseName → bool?
Useful to indicate using new snake_case naming convention if name is not set
final
validators → List<Validate>
A list of validators to apply to the annotated property.
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited