class MongoMapper::Document::OrmAdapter
def self.except_classes
def self.except_classes @@except_classes ||= [] end
def self.model_classes
def self.model_classes ObjectSpace.each_object(Class).to_a.select {|klass| klass.ancestors.include? MongoMapper::Document} end
def column_names
def column_names klass.column_names end
def conditions_to_fields(conditions)
def conditions_to_fields(conditions) conditions.inject({}) do |fields, (key, value)| if value.is_a?(MongoMapper::Document) && klass.key?("#{key}_id") fields.merge("#{key}_id" => value.id) else fields.merge(key => value) end end end
def create!(attributes)
- See: OrmAdapter::Base#create! -
def create!(attributes) klass.create!(attributes) end
def find_all(conditions)
- See: OrmAdapter::Base#find_all -
def find_all(conditions) conditions, order = extract_conditions_and_order!(conditions) conditions = conditions.merge(:sort => order) unless order.nil? klass.all(conditions_to_fields(conditions)) end
def find_first(conditions)
- See: OrmAdapter::Base#find_first -
def find_first(conditions) conditions, order = extract_conditions_and_order!(conditions) conditions = conditions.merge(:sort => order) unless order.nil? klass.first(conditions_to_fields(conditions)) end
def get(id)
- See: OrmAdapter::Base#get -
def get(id) klass.first({ :id => wrap_key(id) }) end
def get!(id)
- See: OrmAdapter::Base#get! -
def get!(id) klass.find!(wrap_key(id)) end