Module: RansackWrap::Adapters::ActiveRecord::Base

Defined in:
lib/ransack_wrap/adapters/active_record.rb

Instance Method Summary collapse

Instance Method Details

#wrap_searcher(params = {}) ⇒ Object

Creates new searcher using RansackWrap::Search subclass for current model.

In the example below it creates instance of UserSearcher class (which must be defined in app/searchers/user_searcher.rb)

User.wrap_searcher(params[:q])
# => UserSearcher.new


17
18
19
# File 'lib/ransack_wrap/adapters/active_record.rb', line 17

def wrap_searcher(params = {})
  send(:wrap_searcher_as, name, params)
end

#wrap_searcher_as(name, params = {}) ⇒ Object

Creates new searcher using custom named searcher class.

In the example below it creates instance of SharedSearcher class (which must be defined in app/searchers/shared_searcher.rb)

User.wrap_searcher(:shared, params[:q]) 
# => SharedSearcher.new

:call-seq:

wrap_searcher_as(:name, params = {})
wrap_searcher_as("name", params = {})


32
33
34
# File 'lib/ransack_wrap/adapters/active_record.rb', line 32

def wrap_searcher_as(name, params = {})
  send(:searcher_class_for, name).new(self, params)
end