class

App::Models::AuditLog

Inherits PgORM::Base < PgORM::Validators < PgORM::Table < PgORM::Persistence < PgORM::Associations < ActiveModel::Callbacks < ActiveModel::Validation < ActiveModel::Model < DB::Mappable < DB::Serializable < YAML::Serializable < JSON::Serializable < Reference < Object

Constants

CALLBACKS = { before_save: [do if (__temp_259 = @user) && __temp_259.new_record? __temp_259.save self.user_id = __temp_259.id.not_nil! end end, do if (__temp_260 = @organization) && __temp_260.new_record? __temp_260.save self.organization_id = __temp_260.id.not_nil! end end] of Nil, after_save: [] of Nil, before_create: [] of Nil, after_create: [] of Nil, before_update: [] of Nil, after_update: [] of Nil, before_destroy: [] of Nil, after_destroy: [do end, do end] of Nil, }
PRIMARY_KEY_TYPES = {:id => UUID} of Nil => Nil

macro level key => type

PRIMARY_KEYS = [{:id}]

Constructors

from_json(string_or_io : String | IO, trusted : Bool = false) : self
from_json(string_or_io : String | IO, root : String, trusted : Bool = false) : self

Deserializes the given JSON in string_or_io into an instance of self, assuming the JSON consists of an JSON object with key root, and whose value is the value to deserialize. Will not deserialise from fields with mass_assign: false

class User < ActiveModel::Model
  attribute name : String
  attribute google_id : UUID, mass_assign: false
end

User.from_json(%({"main": {"name": "Jason", "google_id": "f6f70bfb-c882-446d-8758-7ce47db39620"}}), root: "main") # => #<User:0x103131b20 @name="Jason">
from_trusted_json(string_or_io : String | IO, root : String) : self
from_trusted_json(string_or_io : String | IO) : self

Serialize from a trusted JSON source

from_trusted_yaml(string_or_io : String | IO) : self

Serialize from a trusted YAML source

from_yaml(string_or_io : String | IO, trusted : Bool = false) : self
log(action : String, resource_type : String, resource_id : UUID | Nil = nil, user : User | Nil = nil, organization : Organization | Nil = nil, details : Hash(String, JSON::Any::Type) | Nil = nil, ip_address : String | Nil = nil, user_agent : String | Nil = nil) : AuditLog
Source
new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
Source
new(pull : JSON::PullParser)
Source
new(rs : DB::ResultSet)
new(id : UUID | ActiveModel::Model::None = ::ActiveModel::Model::None.new, user_id : UUID | Nil | ActiveModel::Model::None = ::ActiveModel::Model::None.new, organization_id : UUID | Nil | ActiveModel::Model::None = ::ActiveModel::Model::None.new, action : String | ActiveModel::Model::None = ::ActiveModel::Model::None.new, resource_type : String | ActiveModel::Model::None = ::ActiveModel::Model::None.new, resource_id : UUID | Nil | ActiveModel::Model::None = ::ActiveModel::Model::None.new, details : JSON::Any | Nil | ActiveModel::Model::None = ::ActiveModel::Model::None.new, ip_address : String | Nil | ActiveModel::Model::None = ::ActiveModel::Model::None.new, user_agent : String | Nil | ActiveModel::Model::None = ::ActiveModel::Model::None.new, created_at : Time | ActiveModel::Model::None = ::ActiveModel::Model::None.new)
new(params : HTTP::Params | Hash(String, String) | Tuple(String, String))

Initialize App::Models::AuditLog from HTTP::Params.

Class methods

attributes

Returns all attribute keys.

by_organization_id(id)
Source
by_user_id(id)
Source
changes(id : UUID | Nil = nil) : ChangeFeed

Changefeed at row (if id passed) or whole table level. Returns a ChangeFeed instance which can be used to invoke async callbacks via on or use blocking Iterator via each method.

from_rs(__temp_455 : DB::ResultSet)
on_error(err : Exception | IO::Error)
primary_key
Source
table_name

Instance methods

action

action getter

action=(value : String)

action setter

action?

Assign instance variable to correct type

action_assigned?
action_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

action_changed?
action_default

action's default value

Source
action_present?
action_removed?
action_was
action_will_change!

Include action in the set of changed attributes, whether it has changed or not.

after_create
Source
after_destroy
Source
after_initialize(trusted : Bool)
after_save
Source
after_update
Source
apply_defaults

Generate code to apply default values

assign_attributes(id : UUID | Missing = Missing, user_id : UUID | Nil | Missing = Missing, organization_id : UUID | Nil | Missing = Missing, action : String | Missing = Missing, resource_type : String | Missing = Missing, resource_id : UUID | Nil | Missing = Missing, details : JSON::Any | Nil | Missing = Missing, ip_address : String | Nil | Missing = Missing, user_agent : String | Nil | Missing = Missing, created_at : Time | Missing = Missing)

Assign to multiple attributes.

assign_attributes(params : HTTP::Params | Hash(String, String) | Tuple(String, String))

Assign to mulitple attributes via HTTP::Params.

assign_attributes(model : App::Models::AuditLog)

Assign to multiple attributes from a model object

assign_attributes_from_json(json, root : String)
assign_attributes_from_json(json)
assign_attributes_from_trusted_json(json, root : String)
assign_attributes_from_trusted_json(json)

Assign each field from JSON if field exists in JSON and has changed in model

assign_attributes_from_trusted_yaml(yaml)
assign_attributes_from_yaml(yaml)

Uses the YAML parser as JSON is valid YAML

attributes

Returns a Hash of all attribute values

attributes_tuple

Returns a NamedTuple of all attribute values.

before_create
Source
before_destroy
Source
before_save
Source
before_update
Source
build_organization
Source
build_user
Source
changed?

Check if any attributes have changed.

changed_attributes

Returns a Hash with all changed attributes.

changed_json(io : IO) : Nil

Serialize the set of changed attributes to JSON.

changed_json

Serialize the set of changed attributes to JSON.

changed_persist_attributes
changed_yaml(io : IO) : Nil

Serialize the set of changed attributes to YAML.

changed_yaml

Serialize the set of changed attributes to YAML.

clear_changes_information

Reset changes for all attributes.

create_organization
Source
create_organization!
Source
create_user
Source
create_user!
Source
created_at

created_at getter

created_at=(value : Time)

created_at setter

created_at?

Assign instance variable to correct type

created_at_assigned?
created_at_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

created_at_changed?
created_at_default

created_at's default value

Source
created_at_present?
created_at_removed?
created_at_was
created_at_will_change!

Include created_at in the set of changed attributes, whether it has changed or not.

details

details getter

details=(value : JSON::Any | Nil)

details setter

details_assigned?
details_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

details_changed?
details_default

details's default value

Source
details_present?
details_removed?
details_was
details_will_change!

Include details in the set of changed attributes, whether it has changed or not.

id

id getter

id=(value : UUID)

Setters id setter

id?

Assign instance variable to correct type

id_assigned?
id_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

id_changed?
id_default

id's default value

id_present?
id_removed?
id_was
id_will_change!

Include id in the set of changed attributes, whether it has changed or not.

invoke_props
ip_address

ip_address getter

ip_address=(value : String | Nil)

ip_address setter

ip_address_assigned?
ip_address_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

ip_address_changed?
ip_address_default

ip_address's default value

Source
ip_address_present?
ip_address_removed?
ip_address_was
ip_address_will_change!

Include ip_address in the set of changed attributes, whether it has changed or not.

organization
Source
organization!
Source
organization=(record : Organization) : Organization
Source
organization?
Source
organization_id

organization_id getter

organization_id=(value : UUID | Nil)

organization_id setter

organization_id_assigned?
organization_id_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

organization_id_changed?
organization_id_default

organization_id's default value

Source
organization_id_present?
organization_id_removed?
organization_id_was
organization_id_will_change!

Include organization_id in the set of changed attributes, whether it has changed or not.

persistent_attributes

Returns a Hash of all attributes that can be persisted.

primary_key
Source
primary_key_hash
reload_organization
Source
reload_organization?
Source
reload_user
Source
reload_user?
Source
resource_id

resource_id getter

resource_id=(value : UUID | Nil)

resource_id setter

resource_id_assigned?
resource_id_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

resource_id_changed?
resource_id_default

resource_id's default value

Source
resource_id_present?
resource_id_removed?
resource_id_was
resource_id_will_change!

Include resource_id in the set of changed attributes, whether it has changed or not.

resource_type

resource_type getter

resource_type=(value : String)

resource_type setter

resource_type?

Assign instance variable to correct type

resource_type_assigned?
resource_type_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

resource_type_changed?
resource_type_default

resource_type's default value

Source
resource_type_present?
resource_type_removed?
resource_type_was
resource_type_will_change!

Include resource_type in the set of changed attributes, whether it has changed or not.

restore_attributes

Reset each attribute to their previous values and clears all changes.

run_create_callbacks

Wrap a block with callbacks for the appropriate crud operation

Source
run_destroy_callbacks
Source
run_save_callbacks
Source
run_update_callbacks
Source
table_name
user
Source
user!
Source
user=(record : User) : User
Source
user?
Source
user_agent

user_agent getter

user_agent=(value : String | Nil)

user_agent setter

user_agent_assigned?
user_agent_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

user_agent_changed?
user_agent_default

user_agent's default value

Source
user_agent_present?
user_agent_removed?
user_agent_was
user_agent_will_change!

Include user_agent in the set of changed attributes, whether it has changed or not.

user_id

user_id getter

user_id=(value : UUID | Nil)

user_id setter

user_id_assigned?
user_id_change

Returns a Tuple of the previous and the current value of an instance variable if it has changed

user_id_changed?
user_id_default

user_id's default value

Source
user_id_present?
user_id_removed?
user_id_was
user_id_will_change!

Include user_id in the set of changed attributes, whether it has changed or not.

validate_nilability

Validate that all non-nillable fields have values.

Nested types