Module: TinyDyno::Document::ClassMethods

Defined in:
lib/tiny_dyno/document.rb

Instance Method Summary collapse

Instance Method Details

#where(options = {}) ⇒ Object

TODO, extract into its own class to allow better testing



57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/tiny_dyno/document.rb', line 57

def where(options = {})
  validate_option_keys(options)
  get_query = build_where_query(options)
  attributes = TinyDyno::Adapter.get_item(get_item_request: get_query)
  if attributes.nil?
    return nil
  else
    record = self.new(attributes)
    record.instance_variable_set(:@new_record, false)
    record.instance_variable_set(:@changed_attributes, {})
    record
  end
end