Module: FullSearch::SoftDelete
- Defined in:
- lib/full_search/soft_delete.rb
Class Method Summary collapse
- .active_update_clause(model) ⇒ Object
- .delete_transition_sql(model) ⇒ Object
- .soft_delete_remove_clause(model) ⇒ Object
Class Method Details
.active_update_clause(model) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/full_search/soft_delete.rb', line 5 def self.active_update_clause(model) dsl = model.full_search_dsl return nil unless dsl&.soft_delete_column col = model.connection.quote_column_name(dsl.soft_delete_column) "WHEN new.#{col} IS NULL" end |
.delete_transition_sql(model) ⇒ Object
21 22 23 |
# File 'lib/full_search/soft_delete.rb', line 21 def self.delete_transition_sql(model) active_update_clause(model) end |
.soft_delete_remove_clause(model) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/full_search/soft_delete.rb', line 13 def self.soft_delete_remove_clause(model) dsl = model.full_search_dsl return nil unless dsl&.soft_delete_column col = model.connection.quote_column_name(dsl.soft_delete_column) "WHEN old.#{col} IS NULL AND new.#{col} IS NOT NULL" end |