Module: Rails3JQueryAutocomplete::ClassMethods
- Included in:
- ActionController::Base
- Defined in:
- lib/rails3-jquery-autocomplete/autocomplete.rb
Overview
Inspired on DHH’s autocomplete plugin
Usage:
class ProductsController < Admin::BaseController
autocomplete :brand, :name
end
This will magically generate an action autocomplete_brand_name, so, don’t forget to add it on your routes file
resources :products do
get :autocomplete_brand_name, :on => :collection
end
Now, on your view, all you have to do is have a text field like:
f.text_field :brand_name, :autocomplete => autocomplete_brand_name_products_path
Instance Method Summary collapse
Instance Method Details
#autocomplete(object, method, options = {}) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/rails3-jquery-autocomplete/autocomplete.rb', line 24 def autocomplete(object, method, = {}) define_method("autocomplete_#{object}_#{method}") do term = params[:term] if term && !term.empty? #allow specifying fully qualified class name for model object class_name = [:class_name] || object items = get_autocomplete_items(:model => get_object(class_name), \ :options => , :term => term, :method => method) else items = {} end render :json => json_for_autocomplete(items, [:display_value] ||= method) end end |