Plugins - acts_as_fulltextable

StarAdd to favorites

ActsAsFulltextable

============

It allows you to create an auxiliary to be used for full-text searches. It behaves like a polymorphic association, so it can be used with any ActiveRecord model.

See http://blog.wonsys.net/posts/26-our-first-plugin-acts_as_fulltextable/ and http://code.google.com/p/wonsys/

Bug tracker: http://wonsysos.16bugs.com/

Only tested with MySQL 5.x

Step 1

Install the plugin:

  script/plugin install http://wonsys.googlecode.com/svn/plugins/acts_as_fulltextable/

Step 2

Add the following code to the model that should be included in searches:

  acts_as_fulltextable :fields, :to, :include, :in, :index

Step 3

Create the migration:

  script/generate fulltext_rows model1 model2 model3 ...

Then execute it:

  rake db:migrate

Run searches

You can either run a search on a single model:

  Model.find_fulltext('query to run', :limit => 10, :offset => 0)

Or you can run it on more models at once:

  FulltextRow.search('query to run', :only => [:only, :this, :models], :limit => 10, :offset => 0)

Warning

Should you add acts_as_fulltextable to a new model after the initial migration was run, you should execute the following piece of code (a migration or script/console are both fine):

  NewModel.find(:all).each {|i| i.create_fulltext_record}

It will add all of the model’s instances to the index.

Contact us

If you experience any issues, please file a bug report at:

  http://wonsysos.16bugs.com/

Wonsys S.r.l.

http://blog.wonsys.net/posts/26-our-first-plugin-acts_as_fulltextable/

http://wonsys.googlecode.com/svn/plugins/acts_as_fulltextable/

Rails' (MIT)

  • Currently 4.8/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Searching and Queries

Tags

Comments

Add a comment
Artūras Šlajus 7 Mar 2008

If anyone is interested for will_paginate support:

https://wonsysos.16bugs.com/projects/2574/bugs/32062

Other than that - great plugin!

Search Plugins

Query syntax

Plugins by Category

Sponsors

Rails Kits: Get Code. Get Moving.

Have a comment?