ParanoidModel
Will block you from deleting an ActiveRecord model by calling model.delete, model.destroy Class.delete_all and Class.destroy_all.
Also disables Class.update_all and model.update_attribute, because they have no validations.
Installation
Add this line to your application's Gemfile:
gem 'paranoid_model'Usage
class SomeSensitiveModel < ActiveRecord::Base
include ParanoidModel
end> SomeSensitiveModel.destroy_all
ParanoidModel::ParanoidModelException: :destroy_all is verboten for this model.Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Added some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request