class

User

Inherits Avram::PrimaryKeyMethods < Carbon::Emailable < Shield::HasManyPasswordResets < Shield::HasManyLogins < Shield::HasManyEmailConfirmations < Shield::HasManyBearerLogins < Shield::UserSettingsColumn < Shield::User < DB::Mappable < DB::Serializable < LuckyCache::Cacheable < BaseModel < Shield::Model < DB::Mappable < DB::Serializable < LuckyCache::Cacheable < Avram::Model < Avram::SchemaEnforcer < Avram::Polymorphic < Avram::Associations < Avram::Associations::BelongsTo < Avram::Associations::HasOne < Avram::Associations::HasMany < Reference < Object

Constants

ASSOCIATIONS = [{type: BearerLogin, assoc_name: bearer_logins, foreign_key: :user_id, relationship_type: :has_many, through: nil, base_query_class: BearerLogin::BaseQuery}, {type: EmailConfirmation, assoc_name: email_confirmations, foreign_key: :user_id, relationship_type: :has_many, through: nil, base_query_class: EmailConfirmation::BaseQuery}, {type: Login, assoc_name: logins, foreign_key: :user_id, relationship_type: :has_many, through: nil, base_query_class: Login::BaseQuery}, {type: PasswordReset, assoc_name: password_resets, foreign_key: :user_id, relationship_type: :has_many, through: nil, base_query_class: PasswordReset::BaseQuery}] of Nil
COLUMNS = [{name: email, type: String, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: password_digest, type: String, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: settings, type: UserSettings, nilable: false, autogenerated: false, value: nil, serialized: true, allow_blank: false}, {name: id, type: Int64, nilable: false, autogenerated: true, value: nil, serialized: false, allow_blank: false}, {name: created_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false, allow_blank: false}, {name: first_name, type: String, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: last_name, type: String, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: level, type: UserLevel, nilable: false, autogenerated: false, value: nil, serialized: false, allow_blank: false}, {name: updated_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false, allow_blank: false}] of Nil
PRIMARY_KEY_NAME = :id
PRIMARY_KEY_TYPE = Int64

Constructors

new(email : String, password_digest : String, settings : UserSettings, id : Int64, created_at : Time, first_name : String, last_name : String, level : String, updated_at : Time)
new(rs : DB::ResultSet)

Class methods

column_names
columns
ensure_correct_column_mappings!
from_rs(rs : DB::ResultSet)
primary_key_name
schema_enforcer_validations
table_name

Instance methods

_preloaded_bearer_logins=(vals : Array(BearerLogin)) : Array(BearerLogin)
_preloaded_email_confirmations=(vals : Array(EmailConfirmation)) : Array(EmailConfirmation)
_preloaded_logins=(vals : Array(Login)) : Array(Login)
_preloaded_password_resets=(vals : Array(PasswordReset)) : Array(PasswordReset)
base_query_class

This makes it easy for plugins and extensions to use the base SaveOperation

bearer_logins
bearer_logins!
bearer_logins_count
bearer_logins_preloaded?
bearer_logins_query
created_at
delete_operation_class
email
email_confirmations
email_confirmations!
email_confirmations_count
email_confirmations_preloaded?
email_confirmations_query
emailable
Source
first_name
full_name
Source
id
last_name
level
logins
logins!
logins_count
logins_preloaded?
logins_query
password_digest
password_resets
password_resets!
password_resets_count
password_resets_preloaded?
password_resets_query
save_operation_class
settings
updated_at

Nested types