Sunday, 26 April 2015

ActiveRecord::ProtectedModel

require "active_record"
require 'active_record/errors'
module ActiveRecord
class ProtectedModelError < ActiveRecordError #:nodoc:
def initialize
super("Cannot delete record because its protected")
end
end
module ProtectedModel
extend ActiveSupport::Concern
protected
def delete(*args)
raise ProtectedModelError.new
end
def destroy_all(*args)
raise ProtectedModelError.new
end
def destroy(*args)
raise ProtectedModelError.new
end
module ClassMethods
def delete_all(*args)
raise ProtectedModelError.new
end
end
end
end
class Query < ActiveRecord::Base
include ActiveRecord::ProtectedModel if Rails.env.production?
end
view raw gistfile1.rb hosted with ❤ by GitHub

No comments:

Post a Comment