Module: KakurenboPuti::ActiveRecordBase

Defined in:
lib/kakurenbo_puti/active_record_base.rb

Overview

Extension module of ActiveRecord::Base

Defined Under Namespace

Modules: ClassMethods, Initializers, InstanceMethods

Instance Method Summary collapse

Instance Method Details

#soft_deletable(column: :soft_destroyed_at, dependent_associations: []) ⇒ Object

Enable soft-delete.

Parameters:

  • column (Symbol) (defaults to: :soft_destroyed_at)

    Name of soft-deleted date column.

  • dependent_associations (Array<Symbol>) (defaults to: [])

    Names of dependency association.

Raises:

  • (StandardException)

    if Not found soft-deleted date column.



9
10
11
12
13
14
15
16
# File 'lib/kakurenbo_puti/active_record_base.rb', line 9

def soft_deletable(column: :soft_destroyed_at, dependent_associations: [])
  Initializers.create_callbacks self
  Initializers.create_column_name_accessors self, column
  Initializers.create_scopes self, dependent_associations

  include InstanceMethods
  extend ClassMethods
end