Class: FabulatorExhibitExtension::Item
- Inherits:
-
Object
- Object
- FabulatorExhibitExtension::Item
- Defined in:
- lib/fabulator_exhibit_extension/database.rb
Instance Method Summary collapse
- #[](k) ⇒ Object
- #[]=(k, v) ⇒ Object
- #delete(k) ⇒ Object
- #each_pair(&block) ⇒ Object
-
#initialize(i) ⇒ Item
constructor
A new instance of Item.
- #merge!(hash) ⇒ Object
- #save ⇒ Object
- #save! ⇒ Object
Constructor Details
#initialize(i) ⇒ Item
Returns a new instance of Item.
149 150 151 152 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 149 def initialize(i) @item = i @raw_data = ( JSON.parse(i.data) rescue {} ) end |
Instance Method Details
#[](k) ⇒ Object
154 155 156 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 154 def [](k) @raw_data[k] end |
#[]=(k, v) ⇒ Object
158 159 160 161 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 158 def []=(k,v) @raw_data[k] = v self.save end |
#delete(k) ⇒ Object
163 164 165 166 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 163 def delete(k) @raw_data.delete(k) self.save end |
#each_pair(&block) ⇒ Object
168 169 170 171 172 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 168 def each_pair(&block) @raw_data.each_pair do |k,v| yield k,v end end |
#merge!(hash) ⇒ Object
174 175 176 177 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 174 def merge!(hash) @raw_data.merge!(hash) self.save end |
#save ⇒ Object
179 180 181 182 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 179 def save @item.data = @raw_data.to_json @item.save end |
#save! ⇒ Object
184 185 186 187 |
# File 'lib/fabulator_exhibit_extension/database.rb', line 184 def save! @item.data = @raw_data.to_json @item.save! end |