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
156
157
158
|
# File 'lib/mem_model/base.rb', line 156
def abort
self.class.abort
end
|
#class_committed? ⇒ Boolean
130
131
132
|
# File 'lib/mem_model/base.rb', line 130
def class_committed?
self.class.committed?
end
|
#commit ⇒ Object
160
161
162
|
# File 'lib/mem_model/base.rb', line 160
def commit
self.class.commit
end
|
#committed? ⇒ Boolean
127
|
# File 'lib/mem_model/base.rb', line 127
def committed?; @persisted == true; end
|
#create ⇒ Object
172
173
174
175
176
177
178
179
|
# File 'lib/mem_model/base.rb', line 172
def create
self.id ||= generate_id
persistent do
self.class.store << self
@persisted = true unless class_committed?
end
self.id
end
|
#delete ⇒ Object
191
192
193
194
|
# File 'lib/mem_model/base.rb', line 191
def delete
self.class.delete(self)
self
end
|
#errors ⇒ Object
150
|
# File 'lib/mem_model/base.rb', line 150
def errors; @errors ||= Errors.new(self); end
|
#generate_id ⇒ Object
120
121
122
|
# File 'lib/mem_model/base.rb', line 120
def generate_id
object_id
end
|
#initialize(attributes = {}) ⇒ Object
114
115
116
117
118
|
# File 'lib/mem_model/base.rb', line 114
def initialize(attributes = {})
@persisted = false unless maglev?
load_attributes(attributes)
self.id ||= self.generate_id
end
|
#maglev? ⇒ Boolean
152
153
154
|
# File 'lib/mem_model/base.rb', line 152
def maglev?
self.class.maglev?
end
|
#model_name ⇒ Object
124
|
# File 'lib/mem_model/base.rb', line 124
def model_name; self.class.model_name; end
|
#new? ⇒ Boolean
Also known as:
new_record?
141
142
143
|
# File 'lib/mem_model/base.rb', line 141
def new?
!persisted?
end
|
#persisted? ⇒ Boolean
Also known as:
exists?
134
135
136
137
138
|
# File 'lib/mem_model/base.rb', line 134
def persisted?
class_committed? ?
committed? :
@persisted == true
end
|
#persistent(&block) ⇒ Object
164
165
166
|
# File 'lib/mem_model/base.rb', line 164
def persistent(&block)
self.class.persistent(&block)
end
|
#save ⇒ Object
168
169
170
|
# File 'lib/mem_model/base.rb', line 168
def save
new? ? create : update
end
|
#to_key ⇒ Object
146
|
# File 'lib/mem_model/base.rb', line 146
def to_key; end
|
#to_model ⇒ Object
196
197
198
|
# File 'lib/mem_model/base.rb', line 196
def to_model
return self
end
|
#to_param ⇒ Object
147
|
# File 'lib/mem_model/base.rb', line 147
def to_param; end
|
#to_partial_path ⇒ Object
148
|
# File 'lib/mem_model/base.rb', line 148
def to_partial_path; 'something'; end
|
#update ⇒ Object
181
182
183
184
|
# File 'lib/mem_model/base.rb', line 181
def update
commit
true
end
|
#update_attributes(attributes) ⇒ Object
186
187
188
189
|
# File 'lib/mem_model/base.rb', line 186
def update_attributes(attributes)
load_attributes(attributes)
save
end
|