Sha256: 782f6dad5beb5603848592e3282d2d07bc0afc1ae7e6dedcfef88ae12a3df447
Contents?: true
Size: 1.75 KB
Versions: 5
Compression:
Stored size: 1.75 KB
Contents
Explicit soft deletion for ActiveRecord via deleted_at + callbacks and optional default scope.<br/> Not overwriting destroy or delete. Install ======= gem install soft_deletion Usage ===== require 'soft_deletion' class User < ActiveRecord::Base has_soft_deletion :default_scope => true before_soft_delete :validate_deletability # soft_delete stops if this returns false after_soft_delete :send_deletion_emails has_many :products end # soft delete them including all dependencies that are marked as :destroy, :delete_all, :nullify user = User.first user.products.count == 10 user.soft_delete! user.deleted? # true # use special with_deleted scope to find them ... user.reload # ActiveRecord::RecordNotFound User.with_deleted do user.reload # there it is ... user.products.count == 0 end # soft undelete them all user.soft_undelete! user.products.count == 10 # soft delete many User.soft_delete_all!(1,2,3,4) TODO ==== - nullify should use update_all on has_many on soft_delete (performance) - has_many :through should delete join associations on soft_delete - cascading soft_deletes should use the same timestamp for easy reverts Authors ======= ### [Contributors](https://github.com/grosser/soft_deletion/contributors) - [Michel Pigassou](https://github.com/Dagnan) - [Steven Davidovitz](https://github.com/steved555) - [PikachuEXE](https://github.com/PikachuEXE) - [Noel Dellofano](https://github.com/pinkvelociraptor) - [Oliver Nightingale](https://github.com/olivernn) [Zendesk](http://zendesk.com)<br/> michael@grosser.it<br/> License: MIT<br/> [](https://travis-ci.org/grosser/soft_deletion)
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
soft_deletion-0.5.6 | Readme.md |
soft_deletion-0.5.5 | Readme.md |
soft_deletion-0.5.4 | Readme.md |
soft_deletion-0.5.3 | Readme.md |
soft_deletion-0.5.2 | Readme.md |