Sha256: a1878272605063b2293f4180dd4dc60773fb2be92977ad645e88c5fcbf8881ec
Contents?: true
Size: 560 Bytes
Versions: 4
Compression:
Stored size: 560 Bytes
Contents
# Trait to provide an inactive state to any ActiveRecord model, e.g. a class supporting soft-deletion or archival. # origin: RM module AfterlifeTrait as_trait do |*options| options = options.first || {} adjective = options.delete(:as) || 'deleted' with_adjective ="with_#{adjective}" does "flag", adjective, :default => false named_scope :active, :conditions => { adjective => false } named_scope with_adjective, lambda { |show_perished| { :conditions => (show_perished ? nil : { adjective => false }) } } end end
Version data entries
4 entries across 4 versions & 1 rubygems