Return the primary key field as a String
class Model::Post
- Model::Post
- Crecto::Model
- Reference
- Object
Included Modules
- Crecto::Schema
- Crecto::Schema::BelongsTo
- Crecto::Schema::HasMany
- Crecto::Schema::HasOne
- DB::Mappable
- JSON::Serializable
Extended Modules
- Crecto::Changeset(Model::Post)
Defined in:
models/post.crConstant Summary
-
CRECTO_DESTROY_ASSOCIATIONS =
Array(Symbol).new
-
CRECTO_ENUM_FIELDS =
[] of NamedTuple(name: Symbol, type: String, column_name: String, column_type: String)
-
CRECTO_FIELDS =
[{name: :title, type: String}, {name: :description, type: String}, {name: :filename, type: String}, {name: :author, type: String}] of NamedTuple(name: Symbol, type: String)
-
CRECTO_MODEL_FIELDS =
[] of NamedTuple(name: Symbol, type: String)
-
CRECTO_NULLIFY_ASSOCIATIONS =
Array(Symbol).new
-
CRECTO_PRIMARY_KEY_FIELD =
"id"
-
CRECTO_PRIMARY_KEY_FIELD_SYMBOL =
:id
-
CRECTO_PRIMARY_KEY_FIELD_TYPE =
"Int32"
-
CRECTO_VALID_FIELD_OPTIONS =
[:primary_key, :virtual, :default]
-
CRECTO_VALID_FIELD_TYPES =
[String, Int64, Int32, Int16, Float32, Float64, Bool, Time, Int32 | Int64, Float32 | Float64, Json, PkeyValue, Array(String), Array(Int64), Array(Int32), Array(Int16), Array(Float32), Array(Float64), Array(Bool), Array(Time), Array(Int32 | Int64), Array(Float32 | Float64), Array(Json), Array(PkeyValue)]
-
macro constants
Constructors
Class Method Summary
- .add_destroy_association(a)
- .add_nullify_association(a)
- .association_type_for_association(association : Symbol)
- .cast(attributes : NamedTuple, whitelist : Tuple = attributes.keys)
- .cast(attributes : Hash(Symbol, T), whitelist : Array(Symbol) = attributes.keys) forall T
- .cast(attributes : Hash(String, T), whitelist : Array(String) = attributes.keys) forall T
-
.cast(**attributes)
Class methods for mass assignment
- .cast!(attributes : NamedTuple)
-
.cast!(**attributes : **T) forall T
Class methods for compile-time type safe mass assignment
-
.changeset_fields
Class method to get the
.changeset_fields
- .created_at_field
- .destroy_associations
- .fields
- .foreign_key_for_association(association : Symbol) : Symbol | Nil
- .foreign_key_for_association(klass : Crecto::Model.class)
- .foreign_key_value_for_association(association : Symbol, item)
- .from_rs(__temp_72 : DB::ResultSet)
-
.klass_for_association(association : Symbol)
Empty association methods Implementations are in the setup_association macro
- .nullify_associations
-
.primary_key_field
Return the primary key field as a String
-
.primary_key_field_symbol
Return the primary key field as a Symbol
- .set_value_for_association(association : Symbol, item, items)
-
.table_name
Class method to get the table name
- .through_key_for_association(association : Symbol) : Symbol | Nil
- .updated_at_field
- .use_primary_key?
-
.validate(message : String, block : Model::Post -> _)
Validates generic block against an instance of the class
Instance Method Summary
- #author : String?
- #author!
- #author=(_author : String | Nil)
- #cast(attributes : NamedTuple, whitelist : Tuple = attributes.keys)
- #cast(attributes : Hash(Symbol, T), whitelist : Array(Symbol) = attributes.keys) forall T
- #cast(attributes : Hash(String, T), whitelist : Array(String) = attributes.keys) forall T
-
#cast(**attributes : **T) forall T
Empty instance methods for mass assignment Implementations are in the Schema.setup macro
- #cast!(attributes : NamedTuple)
-
#cast!(**attributes : **T) forall T
Instance method for compile-time type safe mass assignment
- #created_at : Time?
- #created_at=(_created_at : Time | Nil)
- #created_at_to_now
- #created_at_value
- #description : String?
- #description!
- #description=(_description : String | Nil)
- #filename : String?
- #filename!
- #filename=(_filename : String | Nil)
- #get_changeset
- #id : Int32?
- #id=(_id : Int32 | Nil)
- #initial_values : Hash(Symbol, DbValue) | Nil
- #initial_values=(initial_values : Hash(Symbol, DbValue) | Nil)
-
#pkey_value
Returns the value of the primary key field
- #title : String?
-
#title!
Builds fields' cast typed method
- #title=(_title : String | Nil)
-
#to_query_hash(include_virtual = false)
Builds a hash from all
CRECTO_FIELDS
defined - #update_from_hash(hash : Hash(String, DbValue))
- #update_primary_key(val)
- #updated_at : Time?
- #updated_at=(_updated_at : Time | Nil)
- #updated_at_to_now
- #updated_at_value
Constructor Detail
Class Method Detail
Class methods for compile-time type safe mass assignment
Empty association methods Implementations are in the setup_association macro
Validates generic block against an instance of the class
Instance Method Detail
Empty instance methods for mass assignment Implementations are in the Schema.setup macro