Sha256: a340ca550da6f77f9404304f6adf8197cc60264dd558f1486ddf59729c58ad64

Contents?: true

Size: 1.74 KB

Versions: 10

Compression:

Stored size: 1.74 KB

Contents

module Sunspot
  module DSL #:nodoc:
    module Adjustable #:nodoc
      # <strong>Expert:</strong> Adjust or reset the parameters passed to Solr.
      # The adjustment will take place just before sending the params to solr,
      # after Sunspot builds the Solr params based on the methods called in the
      # DSL.
      #
      # Under normal circumstances, using this method should not be necessary;
      # if you find that it is, please consider submitting a feature request.
      # Using this method requires knowledge of Sunspot's internal Solr schema
      # and Solr query representations, which are not part of Sunspot's public
      # API; they could change at any time. <strong>This method is unsupported
      # and your mileage may vary.</strong>
      #
      # ==== Examples
      #
      #   Sunspot.search(Post) do
      #     adjust_solr_params do |params|
      #       params[:q] += ' AND something_s:more'
      #     end
      #   end
      #
      #   Sunspot.more_like_this(my_post) do
      #     adjust_solr_params do |params|
      #       params["mlt.match.include"] = true
      #     end
      #   end
      #
      def adjust_solr_params( &block )
        @query.add_parameter_adjustment(block)
      end

      #
      # <strong>Expert:</strong> Use a custom request handler for this search.
      # The general use case for this would be a request handler configuration
      # you've defined in solrconfig that has different search components,
      # defaults, etc. Using this to point at an entirely different type of
      # request handler that Sunspot doesn't support probably won't get you very
      # far.
      #
      def request_handler(request_handler)
        @search.request_handler = request_handler
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
sunspot-2.7.1 lib/sunspot/dsl/adjustable.rb
sunspot-2.7.0 lib/sunspot/dsl/adjustable.rb
sunspot-2.6.0 lib/sunspot/dsl/adjustable.rb
sunspot-2.5.0 lib/sunspot/dsl/adjustable.rb
sunspot-2.4.0 lib/sunspot/dsl/adjustable.rb
sunspot-2.3.0 lib/sunspot/dsl/adjustable.rb
sunspot-2.2.8 lib/sunspot/dsl/adjustable.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/sunspot-2.2.7/lib/sunspot/dsl/adjustable.rb
sunspot-2.2.7 lib/sunspot/dsl/adjustable.rb
sunspot-2.2.6 lib/sunspot/dsl/adjustable.rb