Module: ActiveScaffold::MarkedModel
- Defined in:
- lib/active_scaffold/marked_model.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
-
.included(base) ⇒ Object
This is a module aimed at making the make session_stored marked_records available to ActiveRecord models.
Instance Method Summary collapse
- #as_marked ⇒ Object
- #as_marked=(value) ⇒ Object
-
#marked_records ⇒ Object
Instance-level access to the marked_records.
Class Method Details
.included(base) ⇒ Object
This is a module aimed at making the make session_stored marked_records available to ActiveRecord models
5 6 7 8 |
# File 'lib/active_scaffold/marked_model.rb', line 5 def self.included(base) base.extend ClassMethods base.scope :as_marked, lambda { where(:id => base.marked_records.to_a) } end |
Instance Method Details
#as_marked ⇒ Object
10 11 12 |
# File 'lib/active_scaffold/marked_model.rb', line 10 def as_marked marked_records.include?(self.id) end |
#as_marked=(value) ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/active_scaffold/marked_model.rb', line 14 def as_marked=(value) value = [true, 'true', 1, '1', 'T', 't'].include?(value.class == String ? value.downcase : value) if value == true marked_records << self.id if !as_marked else marked_records.delete(self.id) end end |
#marked_records ⇒ Object
Instance-level access to the marked_records
34 35 36 |
# File 'lib/active_scaffold/marked_model.rb', line 34 def marked_records self.class.marked_records end |