Hi everyone,
I have an app that manages accounts. There''s a search function that I
don''t like, but it works:
@person_pages, @people = paginate :person, :per_page => 20,
:conditions => [ "LOWER(username) LIKE ? OR LOWER(first_name)
LIKE ? OR LOWER(last_name) LIKE ? OR LOWER(preferred_name) LIKE ?",
"%" + session[:q] + "%",
"%" + session[:q] + "%",
"%" + session[:q] + "%",
"%" + session[:q] + "%" ], :order =>
''username ASC''
What I need is one search function that does this by default, but also
allows me to search each value independently.
I''d love to use a find_by_first_name() finder, but these are all
"like" searches, which isn''t supported in that fashion. This
all ends
up looking pretty ugly in the code.
So, on to some gems and other add-ons.
* Ferret looks awesome, but overkill for this purpose.
* SearchGenerator might do it, but all I need is a finder to feed a
collection, not views and layouts.
* ActiveSearch looks like the thing, but I''ve heard little about it,
so I''m not sure it''s still valid.
I''ll play with all of these to get a feel, but if anyone has any
thoughts on the best way to search through a table full of name and
title data, I''d love to hear them.
Thanks!
Sean