class

User::SaveOperation

Inherits Avram::SaveOperation < Avram::AddColumnAttributes < Avram::Upsert < Avram::InheritColumnAttributes < Avram::MarkAsFailed < Avram::NestedSaveOperation < Avram::DatabaseValidations < Avram::SaveCallbacks < Avram::AfterCommitCallback < Avram::CallbackHelpers < Avram::NeedyInitializerAndSaveMethods < Avram::ParamKeyOverride < Avram::OperationErrors < Avram::Validations < Avram::DefineAttribute < Reference < Object

Constants

ATTRIBUTES = [] of Nil
COLUMN_ATTRIBUTES = [{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
OPERATION_NEEDS = [] of Nil

Constructors

new(record : T, params : Avram::Paramable, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

new(params : Avram::Paramable, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

new(record : T, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

new(email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

Class methods

create(params, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, &)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

create(email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, &)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

create(params : Hash, **named_args, &)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

create!(params, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

create!(email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

create!(params : Hash, **named_args)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

update(record : T, with params, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, &)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

update(record : T, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE, &)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

update(record : T, params : Hash, **named_args, &)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

update!(record : T, with params, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

update!(record : T, email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

update!(record : T, params : Hash, **named_args)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

Instance methods

attributes
created_at
created_at=(_value)
email
email=(_value)
first_name
first_name=(_value)
id
id=(_value)
last_name
last_name=(_value)
level
level=(_value)
password_digest
password_digest=(_value)
permitted_params
required_attributes
set_attributes(email : String | Avram::Nothing = IGNORE, password_digest : String | Avram::Nothing = IGNORE, settings : UserSettings | Avram::Nothing = IGNORE, id : Int64 | Avram::Nothing = IGNORE, created_at : Time | Avram::Nothing = IGNORE, first_name : String | Avram::Nothing = IGNORE, last_name : String | Avram::Nothing = IGNORE, level : UserLevel | Avram::Nothing = IGNORE, updated_at : Time | Avram::Nothing = IGNORE)

@type is not correct in this method, but is in the macro we call below That is why this macro was extracted. We need @type to get the attributes for this SaveOperation

set_created_at_from_param(_value)
set_email_from_param(_value)
set_first_name_from_param(_value)
set_id_from_param(_value)
set_last_name_from_param(_value)
set_level_from_param(_value)
set_password_digest_from_param(_value)
set_settings_from_param(_value : String)
set_settings_from_param(_value : UserSettings)
set_updated_at_from_param(_value)
settings
settings=(_value)
updated_at
updated_at=(_value)

Macros

param_key(key)