module KakurenboPuti::ActiveRecordBase::InstanceMethods

Public Instance Methods

restore() click to toggle source

Restore model. @return [Boolean] Return true if it is successfully restored.

# File lib/kakurenbo_puti/active_record_base.rb, line 64
def restore
  true.tap { restore! }
rescue
  false
end
restore!() click to toggle source

Restore model. @raise [ActiveRecordError]

# File lib/kakurenbo_puti/active_record_base.rb, line 72
def restore!
  run_callbacks(:restore) { update_column soft_delete_column, nil; self }
end
soft_destroy() click to toggle source

Soft-Delete model. @return [Boolean] Return true if it is successfully restored.

# File lib/kakurenbo_puti/active_record_base.rb, line 78
def soft_destroy
  true.tap { soft_destroy! }
rescue
  false
end
soft_destroy!() click to toggle source

Soft-Delete model. @raise [ActiveRecordError]

# File lib/kakurenbo_puti/active_record_base.rb, line 86
def soft_destroy!
  run_callbacks(:soft_destroy) { touch soft_delete_column; self }
end
soft_destroyed?() click to toggle source

Check if model is soft-deleted. @return [Boolean] Return true if model is soft-deleted.

# File lib/kakurenbo_puti/active_record_base.rb, line 92
def soft_destroyed?
  self.class.only_soft_destroyed.where(id: id).exists?
end