class Dock::Mongoid
Public Instance Methods
all(options = {})
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 18 def all(options = {}) conditions, order, limit, offset = extract_conditions!(options) model.where(conditions_to_fields(conditions)).order_by(order).limit(limit).offset(offset) end
associations()
click to toggle source
# File lib/dock/adapters/mongoid.rb, line 40 def associations() end
belongs_to()
click to toggle source
# File lib/dock/adapters/mongoid.rb, line 59 def belongs_to() end
column_names()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 48 def column_names model.fields.keys end
count(options = {})
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 52 def count(options = {}) all(options).count end
create(attributes = {})
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 6 def create(attributes = {}) model.create!(attributes) end
cyclic?()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 74 def cyclic? model.cyclic? end
destroy(object)
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 37 def destroy(object) object.destroy if valid_object?(object) end
embedded?()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 70 def embedded? model.relations.values.detect { |a| a.macro.to_sym == :embedded_in } end
encoding()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 56 def encoding 'UTF-8' end
find(id)
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 10 def find(id) model.find(wrap_key(id)) end
find!(id)
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 14 def find!(id) model.where(:_id => wrap_key(id)).first end
first(options = {})
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 23 def first(options = {}) conditions, order = extract_conditions!(options) model.limit(1).where(conditions_to_fields(conditions)).order_by(order).first end
has_many()
click to toggle source
# File lib/dock/adapters/mongoid.rb, line 62 def has_many() end
id()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 28 def id '_id' end
model_name()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 44 def model_name model.class.name end
properties()
click to toggle source
# File lib/dock/adapters/mongoid.rb, line 81 def properties() end
scoped?()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 66 def scoped? model.scoped end
supports_joins()
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 78 def supports_joins false end
update(search_key, find_by, update_key, by_value)
click to toggle source
Checked
# File lib/dock/adapters/mongoid.rb, line 32 def update(search_key, find_by, update_key, by_value) entry = model.where(search_key, find_by) entry.update_attributes!(update_key, by_value) end
Protected Instance Methods
conditions_to_fields(conditions)
click to toggle source
converts and documents to ids
# File lib/dock/adapters/mongoid.rb, line 86 def conditions_to_fields(conditions) conditions.inject({}) do |fields, (key, value)| if value.is_a?(Mongoid::Document) && model.fields.keys.include?("#{key}_id") fields.merge("#{key}_id" => value.id) elsif key.to_s == 'id' fields.merge('_id' => value) else fields.merge(key => value) end end end