Module: Hideable::Macro::ClassMethods
- Defined in:
- lib/activerecord-hideable/macro.rb
Instance Method Summary collapse
-
#acts_as_hideable(options = {}) ⇒ Object
class Article < ActiveRecord::Base acts_as_hideable toggle: :hidden end.
Instance Method Details
#acts_as_hideable(options = {}) ⇒ Object
class Article < ActiveRecord::Base
acts_as_hideable toggle: :hidden
end
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/activerecord-hideable/macro.rb', line 14 def acts_as_hideable( = {}) .reverse_merge!(toggle: Hideable.default_column) toggle = [:toggle] scope :hidden, -> { where(toggle => true) } scope :shown, -> { where(toggle => false) } define_method(:shown?) { !self[toggle] } define_method(:hidden?) { !!self[toggle] } unless toggle == :hidden unless respond_to?(:hideable_options) class_attribute :hideable_options, instance_accessor: false, instance_predicate: false end self. = end |