add trashable concern on user
This commit is contained in:
21
app/models/concerns/trashable.rb
Normal file
21
app/models/concerns/trashable.rb
Normal file
@@ -0,0 +1,21 @@
|
||||
module Trashable
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
included do
|
||||
default_scope { where(deleted_at: nil) }
|
||||
end
|
||||
|
||||
module ClassMethods
|
||||
def trashed
|
||||
self.unscoped.where(self.arel_table[:deleted_at].not_eq(nil))
|
||||
end
|
||||
end
|
||||
|
||||
def destroy
|
||||
update_column :deleted_at, Time.now
|
||||
end
|
||||
|
||||
def recover
|
||||
update_attribute :deleted_at, nil
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user