Module: RediJsonModels::RediJsonModelMixin

Defined in:
lib/redijson_models.rb

Instance Method Summary collapse

Instance Method Details

#saveObject



89
90
91
92
93
94
95
96
97
# File 'lib/redijson_models.rb', line 89

def save
  klass = self.class
  id = klass.send :incr
  attrs = attributes
  attrs.merge! id: id
  data  = Oj.dump attrs
  RJ["#{self.class.resource}:#{id}"] = data
  self
end

#update(attrs_new) ⇒ Object



77
78
79
80
81
82
83
84
85
86
87
# File 'lib/redijson_models.rb', line 77

def update(attrs_new)
  raise "Can't update a resource without an `id`" unless id
  klass = self.class
  model = klass.get id
  attrs = model.attributes
  attrs.merge! attrs_new
  obj   = klass.new attrs
  data  = Oj.dump obj.attributes
  RJ["#{self.class.resource}:#{id}"] = data
  obj
end