Module: ActsAsParanoid::ClassMethods
- Defined in:
- lib/rails3_acts_as_paranoid.rb
Instance Method Summary collapse
- #delete_all(conditions = nil) ⇒ Object
- #delete_all!(conditions = nil) ⇒ Object
- #delete_now_value ⇒ Object
- #dependent_associations ⇒ Object
- #only_deleted ⇒ Object
- #paranoid_column ⇒ Object
- #paranoid_column_type ⇒ Object
- #with_deleted ⇒ Object
Instance Method Details
#delete_all(conditions = nil) ⇒ Object
64 65 66 |
# File 'lib/rails3_acts_as_paranoid.rb', line 64 def delete_all(conditions = nil) update_all ["#{paranoid_configuration[:column]} = ?", delete_now_value], conditions end |
#delete_all!(conditions = nil) ⇒ Object
60 61 62 |
# File 'lib/rails3_acts_as_paranoid.rb', line 60 def delete_all!(conditions = nil) self.unscoped.delete_all!(conditions) end |
#delete_now_value ⇒ Object
80 81 82 83 84 85 |
# File 'lib/rails3_acts_as_paranoid.rb', line 80 def delete_now_value case paranoid_configuration[:column_type] when "time" then Time.now when "boolean" then true end end |
#dependent_associations ⇒ Object
76 77 78 |
# File 'lib/rails3_acts_as_paranoid.rb', line 76 def dependent_associations self.reflect_on_all_associations.select {|a| [:delete_all, :destroy].include?(a.[:dependent]) } end |
#only_deleted ⇒ Object
56 57 58 |
# File 'lib/rails3_acts_as_paranoid.rb', line 56 def only_deleted self.unscoped.where("#{paranoid_column_reference} IS NOT ?", nil) end |
#paranoid_column ⇒ Object
68 69 70 |
# File 'lib/rails3_acts_as_paranoid.rb', line 68 def paranoid_column paranoid_configuration[:column].to_sym end |
#paranoid_column_type ⇒ Object
72 73 74 |
# File 'lib/rails3_acts_as_paranoid.rb', line 72 def paranoid_column_type paranoid_configuration[:column_type].to_sym end |
#with_deleted ⇒ Object
52 53 54 |
# File 'lib/rails3_acts_as_paranoid.rb', line 52 def with_deleted self.unscoped.reload end |