diff --git a/lib/mongo_mapper/plugins/associations/many_documents_proxy.rb b/lib/mongo_mapper/plugins/associations/many_documents_proxy.rb index 581216874..5389ecd27 100644 --- a/lib/mongo_mapper/plugins/associations/many_documents_proxy.rb +++ b/lib/mongo_mapper/plugins/associations/many_documents_proxy.rb @@ -4,7 +4,8 @@ module Plugins module Associations class ManyDocumentsProxy < Collection include DynamicQuerying::ClassMethods - include Querying::PluckyMethods + + def_delegators :query, *(Querying::Methods - [:to_a, :size, :empty?]) def replace(docs) load_target diff --git a/lib/mongo_mapper/plugins/querying.rb b/lib/mongo_mapper/plugins/querying.rb index 89930ecda..5fdacbeff 100644 --- a/lib/mongo_mapper/plugins/querying.rb +++ b/lib/mongo_mapper/plugins/querying.rb @@ -1,6 +1,5 @@ # encoding: UTF-8 require 'mongo_mapper/plugins/querying/decorator' -require 'mongo_mapper/plugins/querying/plucky_methods' module MongoMapper module Plugins @@ -9,13 +8,8 @@ module Querying module ClassMethods extend Forwardable - include PluckyMethods - def_delegators :query, :to_a, :size, :empty? - - def find_each(opts={}) - super(opts).each { |doc| yield(doc) } - end + def_delegators :query, *Querying::Methods def find_by_id(id) find_one(:_id => id) diff --git a/lib/mongo_mapper/plugins/querying/decorator.rb b/lib/mongo_mapper/plugins/querying/decorator.rb index f0314b764..4cad6a9a7 100644 --- a/lib/mongo_mapper/plugins/querying/decorator.rb +++ b/lib/mongo_mapper/plugins/querying/decorator.rb @@ -2,6 +2,8 @@ module MongoMapper module Plugins module Querying + Methods = Plucky::Methods + [:find!] + module Decorator include DynamicQuerying::ClassMethods diff --git a/lib/mongo_mapper/plugins/querying/plucky_methods.rb b/lib/mongo_mapper/plugins/querying/plucky_methods.rb deleted file mode 100644 index 4c5ca20e9..000000000 --- a/lib/mongo_mapper/plugins/querying/plucky_methods.rb +++ /dev/null @@ -1,21 +0,0 @@ -# encoding: UTF-8 -require 'forwardable' - -module MongoMapper - module Plugins - module Querying - module PluckyMethods - extend Forwardable - def_delegators :query, :where, :filter, - :fields, :ignore, :only, - :limit, :paginate, :per_page, :skip, :offset, - :sort, :order, :reverse, - :count, - :distinct, - :last, :first, :find_one, :all, :find_each, - :find, :find!, - :exists?, :exist? - end - end - end -end \ No newline at end of file