def find_with_ferret(q, options = {}, find_options = {})
      if self.scoped.to_sql =~ /WHERE/ && self.scoped.where_values_hash.empty?
        # Treat external scope the same as if :conditions present 
        # (i.e. when it comes to counting results). 
        find_options[:conditions] ||= '1=1'
      end
      return ActsAsFerret::find q, self, options, find_options
    end
def find_with_ferret(q, options = {}, find_options = {})
      if self.scoped.to_sql =~ /WHERE/ && self.scoped.where_values_hash.empty?
        # Treat external scope the same as if :conditions present 
        # (i.e. when it comes to counting results). 
        find_options[:conditions] ||= '1=1'
      end
      return ActsAsFerret::find q, self, options, find_options
    end
Finds instances by searching the Ferret index. Terms are ANDed by default, use
 OR between terms for ORed queries. Or specify +:or_default => true+ in the
 +:ferret+ options hash of acts_as_ferret.

 You may either use the +offset+ and +limit+ options to implement your own
 pagination logic, or use the +page+ and +per_page+ options to use the
 built in pagination support which is compatible with will_paginate's view
 helpers. If +page+ and +per_page+ are given, +offset+ and +limit+ will be
 ignored.

 == options:
 page::        page of search results to retrieve
 per_page::    number of search results that are displayed per page
 offset::      first hit to retrieve (useful for paging)
 limit::       number of hits to retrieve, or :all to retrieve
               all results
 lazy::        Array of field names whose contents should be read directly
               from the index. Those fields have to be marked
               +:store => :yes+ in their field options. Give true to get all
               stored fields. Note that if you have a shared index, you have
               to explicitly state the fields you want to fetch, true won't
               work here)

 +find_options+ is a hash passed on to active_record's find when
 retrieving the data from db, useful to i.e. prefetch relationships with
 :include or to specify additional filter criteria with :conditions (only string and array syntax supported).
 You can also call find_with_ferret inside named or dynamic scopes, if you like the conditions hash syntax more.

 This method returns a +SearchResults+ instance, which really is an Array that has
 been decorated with a total_hits attribute holding the total number of hits.
 Additionally, SearchResults is compatible with the pagination helper
 methods of the will_paginate plugin.

 Please keep in mind that the number of results delivered might be less than
 +limit+ if you specify any active record conditions that further limit
 the result. Use +limit+ and +offset+ as AR find_options instead.
 +page+ and +per_page+ are supposed to work regardless of any
 +conditions+ present in +find_options+.