-
Notifications
You must be signed in to change notification settings - Fork 0
a simple ruby on rails plugin to add scoped search to ActiveRecord
License
nicksellen/search_scope
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
SearchScope =========== A simple extension to ActiveRecord to allow scoped search. You can define a number search types that will use different selection of fields. I wouldn't want to use this to build my google killer search engine on but might be useful for either: * small apps / infrequently searched models * placeholder search funtionality until you move up to proper fulltext search like hyperestraier, ferret, solr, sphinx etc... Example ======= class Hangup < ActiveRecord::Base search_scope :default => :everything, :types => { :everything => [:inherited_from,:most_annoys,:name,:description], :related_people => [:inherited_from,:most_annoys], :name => [:name] } end # Any hangups containing the text cleanliness Hangup.search 'cleanliness' # Search multiple terms - careful as you'll generate (number of terms) * (number of fields) SQL LIKE clauses Hangup.search %w[stickers feathers] # Any hangups that were either inherited from or annoy someone called mike Hangup.search 'mike', :type => :related_people # The above query will result in the following SQL being generated SELECT * FROM `hangups` WHERE ((lower(`hangups`.`inherited_from`) like '%mike%' OR lower(`hangups`.`most_annoys`) like '%mike%')) # Internally this uses named_scope so you can do all the cool stuff that allows Hangup.search('teeth').find(:first, :order => :severity) Copyright (c) 2009 Nick Sellen, released under the MIT license
About
a simple ruby on rails plugin to add scoped search to ActiveRecord
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published