Class: LocalModel::Model::SchemaBuilder
- Inherits:
-
Object
- Object
- LocalModel::Model::SchemaBuilder
- Defined in:
- lib/local_model/model.rb
Instance Attribute Summary collapse
-
#defaults ⇒ Object
readonly
Returns the value of attribute defaults.
-
#schema ⇒ Object
readonly
Returns the value of attribute schema.
Instance Method Summary collapse
- #boolean(name, default: nil) ⇒ Object
- #datetime(name, default: nil) ⇒ Object
- #float(name, default: nil) ⇒ Object
-
#initialize(model) ⇒ SchemaBuilder
constructor
A new instance of SchemaBuilder.
- #integer(name, default: nil) ⇒ Object
- #set_default(name, default) ⇒ Object
- #string(name, default: nil) ⇒ Object
Constructor Details
#initialize(model) ⇒ SchemaBuilder
Returns a new instance of SchemaBuilder.
197 198 199 200 201 202 |
# File 'lib/local_model/model.rb', line 197 def initialize(model) @model = model @schema = { id: :integer } @model.attr_accessor :id @defaults = {} end |
Instance Attribute Details
#defaults ⇒ Object (readonly)
Returns the value of attribute defaults.
195 196 197 |
# File 'lib/local_model/model.rb', line 195 def defaults @defaults end |
#schema ⇒ Object (readonly)
Returns the value of attribute schema.
194 195 196 |
# File 'lib/local_model/model.rb', line 194 def schema @schema end |
Instance Method Details
#boolean(name, default: nil) ⇒ Object
220 221 222 223 224 |
# File 'lib/local_model/model.rb', line 220 def boolean(name, default: nil) @model.attr_accessor name @schema[name] = :boolean set_default(name, default) end |
#datetime(name, default: nil) ⇒ Object
232 233 234 235 236 |
# File 'lib/local_model/model.rb', line 232 def datetime(name, default: nil) @model.attr_accessor name @schema[name] = :datetime set_default(name, default) end |
#float(name, default: nil) ⇒ Object
226 227 228 229 230 |
# File 'lib/local_model/model.rb', line 226 def float(name, default: nil) @model.attr_accessor name @schema[name] = :float set_default(name, default) end |
#integer(name, default: nil) ⇒ Object
214 215 216 217 218 |
# File 'lib/local_model/model.rb', line 214 def integer(name, default: nil) @model.attr_accessor name @schema[name] = :integer set_default(name, default) end |
#set_default(name, default) ⇒ Object
204 205 206 |
# File 'lib/local_model/model.rb', line 204 def set_default(name, default) @defaults[name] = default if !default.nil? end |
#string(name, default: nil) ⇒ Object
208 209 210 211 212 |
# File 'lib/local_model/model.rb', line 208 def string(name, default: nil) @model.attr_accessor name @schema[name] = :string set_default(name, default) end |