Module: Dynamoid::Fields::ClassMethods
- Defined in:
- lib/dynamoid/fields.rb
Instance Method Summary (collapse)
-
- (Object) field(name, type = :string, options = {})
Specify a field for a document.
Instance Method Details
- (Object) field(name, type = :string, options = {})
Specify a field for a document. Its type determines how it is coerced when read in and out of the datastore: default is string, but you can also specify :integer, :float, :set, :array: datetime, and :serialized.
29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/dynamoid/fields.rb', line 29 def field(name, type = :string, = {}) named = name.to_s self.attributes[name] = {:type => type}.merge() define_method(named) do read_attribute(named) end define_method("#{named}=") do |value| write_attribute(named, value) end define_method("#{named}?") do !read_attribute(named).nil? end end |