Module: MemModel::Base
- Extended by:
- Concern
- Defined in:
- lib/mem_model/base.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary
collapse
Methods included from Concern
append_features, extended, included
Instance Method Details
#abort ⇒ Object
140
141
142
|
# File 'lib/mem_model/base.rb', line 140
def abort
self.class.abort
end
|
#class_committed? ⇒ Boolean
114
115
116
|
# File 'lib/mem_model/base.rb', line 114
def class_committed?
self.class.committed?
end
|
#commit ⇒ Object
144
145
146
|
# File 'lib/mem_model/base.rb', line 144
def commit
self.class.commit
end
|
#committed? ⇒ Boolean
111
|
# File 'lib/mem_model/base.rb', line 111
def committed?; @persisted == true; end
|
#create ⇒ Object
156
157
158
159
160
161
162
163
|
# File 'lib/mem_model/base.rb', line 156
def create
self.id ||= generate_id
persistent do
self.class.store << self
@persisted = true unless class_committed?
end
self.id
end
|
#delete ⇒ Object
175
176
177
178
|
# File 'lib/mem_model/base.rb', line 175
def delete
self.class.delete(self)
self
end
|
#errors ⇒ Object
134
|
# File 'lib/mem_model/base.rb', line 134
def errors; @errors ||= Errors.new(self); end
|
#generate_id ⇒ Object
104
105
106
|
# File 'lib/mem_model/base.rb', line 104
def generate_id
object_id
end
|
#initialize(attributes = {}) ⇒ Object
98
99
100
101
102
|
# File 'lib/mem_model/base.rb', line 98
def initialize(attributes = {})
@persisted = false unless maglev?
load_attributes(attributes)
self.id ||= self.generate_id
end
|
#maglev? ⇒ Boolean
136
137
138
|
# File 'lib/mem_model/base.rb', line 136
def maglev?
self.class.maglev?
end
|
#model_name ⇒ Object
108
|
# File 'lib/mem_model/base.rb', line 108
def model_name; self.class.model_name; end
|
#new? ⇒ Boolean
Also known as:
new_record?
125
126
127
|
# File 'lib/mem_model/base.rb', line 125
def new?
!persisted?
end
|
#persisted? ⇒ Boolean
Also known as:
exists?
118
119
120
121
122
|
# File 'lib/mem_model/base.rb', line 118
def persisted?
class_committed? ?
committed? :
@persisted == true
end
|
#persistent(&block) ⇒ Object
148
149
150
|
# File 'lib/mem_model/base.rb', line 148
def persistent(&block)
self.class.persistent(&block)
end
|
#save ⇒ Object
152
153
154
|
# File 'lib/mem_model/base.rb', line 152
def save
new? ? create : update
end
|
#to_key ⇒ Object
130
|
# File 'lib/mem_model/base.rb', line 130
def to_key; end
|
#to_model ⇒ Object
180
181
182
|
# File 'lib/mem_model/base.rb', line 180
def to_model
return self
end
|
#to_param ⇒ Object
131
|
# File 'lib/mem_model/base.rb', line 131
def to_param; end
|
#to_partial_path ⇒ Object
132
|
# File 'lib/mem_model/base.rb', line 132
def to_partial_path; 'something'; end
|
#update ⇒ Object
165
166
167
168
|
# File 'lib/mem_model/base.rb', line 165
def update
commit
true
end
|
#update_attributes(attributes) ⇒ Object
170
171
172
173
|
# File 'lib/mem_model/base.rb', line 170
def update_attributes(attributes)
load_attributes(attributes)
save
end
|