Module: MarkOnly::ClassMethods
- Defined in:
- lib/mark_only.rb
Instance Method Summary collapse
Instance Method Details
#delete(id_or_array) ⇒ Object
18 19 20 21 22 23 24 25 26 |
# File 'lib/mark_only.rb', line 18 def delete(id_or_array) return super(id_or_array) unless !!::MarkOnly.enabled logger.debug("will not #{self}.delete #{id_or_array.inspect}", e) if MarkOnly.debug c = "#{quoted_table_name}.#{connection.quote_column_name self.mark_only_column}" self. where(primary_key => id_or_array). where("#{c} != ? OR #{c} IS NULL", MarkOnly.deleted_value). update_all({self.mark_only_column => MarkOnly.deleted_value}) end |
#delete_all(conditions = nil) ⇒ Object
28 29 30 31 32 33 34 35 |
# File 'lib/mark_only.rb', line 28 def delete_all(conditions = nil) return super(conditions) unless !!::MarkOnly.enabled logger.debug("will not #{self}.delete_all", e) if MarkOnly.debug c = "#{quoted_table_name}.#{connection.quote_column_name self.mark_only_column}" (conditions ? self.where(conditions) : self). where("#{c} != ? OR #{c} IS NULL", MarkOnly.deleted_value). update_all({self.mark_only_column => MarkOnly.deleted_value}) end |
#mark_only? ⇒ Boolean
14 15 16 |
# File 'lib/mark_only.rb', line 14 def mark_only? true end |