public
Description: Ambition adapter for Sphinx
Clone URL: git://github.com/technicalpickles/ambitious-sphinx.git
Fri Feb 29 16:19:36 -0800 2008
commit  753416af4550d0bc834f7891526e128d16c116d6
tree    04f695b5f7a0f280f6006af27dc68f599e0de575
parent  c1588c2424dbf9b47f16ef40bde58d34ce0ac6a6
name age message
file .gitignore Thu Jan 24 19:12:53 -0800 2008 Ignore .gemspecs. [Josh Nichols]
file LICENSE Tue Feb 12 19:13:52 -0800 2008 Added names to license. Updated gem spec stuff. [Josh Nichols]
file Manifest Mon Feb 18 13:12:42 -0800 2008 Support paging. [technicalpickles]
file README Tue Feb 12 17:45:48 -0800 2008 Updated README [Josh Nichols]
file Rakefile Fri Feb 15 12:58:55 -0800 2008 Updated rubyforge address. [technicalpickles]
directory config/ Thu Jan 24 19:11:00 -0800 2008 Imported ambitious sphinx. [Josh Nichols]
directory lib/ Fri Feb 29 16:19:36 -0800 2008 More rdoc improvements [technicalpickles]
directory test/ Thu Feb 07 12:25:56 -0800 2008 Removed some unnecessary specs. [Josh Nichols]
README
An Ambitious Sphinx Adapter
===========================

I don't know about you, but I like me some sexy full-text searching.

Want to find all meals that mention bacon?

  Meal.select {'bacon'}

What about bacon bits and sour cream?

  Meal.select {'bacon bits' && 'sour cream'}

Maybe with bacon in the name, or cheese in the recipe?

  Meal.select {|m| m.name =~ 'bacon' || m.recipe =~ 'cheese'}

Cheese in the name, but not grilled?

  Meal.select {|m| m.name =~ 'bacon' && m.name !~ 'grilled'}
  

### Big honking disclaimer

We're still learning a lot about how sphinx and ambition work, so things are likely to change a lot.

### Getting Started

You will need the following gems to use ambitious-sphinx:

  gem install ambition
  gem install ultrasphinx
  

  Now install it as ambitious-sphinx:

    sudo rake install
    
  Require our files somewhere, like at the end of config/environment.rb
  
    require 'ambition/adapters/ambitious_sphinx'
    
  You will also need to go through the motions of setting up ultrasphinx. This includes setting up sphinx itself, and 
  modifying your model to indicate what's to be indexed, and so on.

### Playing with the code base

In addition to the other dependencies, you'll need:

  gem install echoe redgreen mocha test-spec
  
Run the tests with:
  
  rake test
  

### More information on Sphinx:

 -> http://www.sphinxsearch.com/
 -> http://blog.evanweaver.com/articles/2007/07/09/ultrasphinx-searching-the-world-in-231-seconds/
 -> http://blog.evanweaver.com/files/doc/fauna/ultrasphinx/files/README.html

### More information on Ambition:

-> http://ambition.rubyforge.org
-> http://groups.google.com/group/ambition-rb/