Class: PPT::DB::Entity
- Inherits:
-
Object
- Object
- PPT::DB::Entity
- Defined in:
- lib/simple-orm/db.rb
Instance Attribute Summary collapse
-
#presenter ⇒ Object
readonly
Returns the value of attribute presenter.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(values) ⇒ Entity
constructor
A new instance of Entity.
- #new_record? ⇒ Boolean
- #save ⇒ Object
- #values(stage = nil) ⇒ Object
Constructor Details
#initialize(values) ⇒ Entity
Returns a new instance of Entity.
16 17 18 19 |
# File 'lib/simple-orm/db.rb', line 16 def initialize(values) @presenter = self.class.presenter.new(values) @is_new_record = true end |
Instance Attribute Details
#presenter ⇒ Object (readonly)
Returns the value of attribute presenter.
15 16 17 |
# File 'lib/simple-orm/db.rb', line 15 def presenter @presenter end |
Class Method Details
.presenter(klass = nil) ⇒ Object
11 12 13 |
# File 'lib/simple-orm/db.rb', line 11 def self.presenter(klass = nil) @presenter ||= klass end |
Instance Method Details
#new_record? ⇒ Boolean
21 22 23 |
# File 'lib/simple-orm/db.rb', line 21 def new_record? @is_new_record end |
#save ⇒ Object
29 30 31 32 33 34 |
# File 'lib/simple-orm/db.rb', line 29 def save stage = self.new_record? ? :create : :update self.values(stage).each do |key, value| PPT::DB.redis.hset(self.key, key, value) end end |
#values(stage = nil) ⇒ Object
25 26 27 |
# File 'lib/simple-orm/db.rb', line 25 def values(stage = nil) @presenter.values(stage) end |