Reputation: 928
I have installed the rails3-jquery-autocomplete gem and its shownin the list of gems. I have generated the autocomplete-rails.js file and included it in my layout. I am trying to implement auto complete field for the users table on the names field. I am getting an error saying
"undefined local variable or method `autocomplete' for #<#<Class:0xb709ac24>:0xb7099a7c>"
Please let me know where I had went wrong.
releases_controller.rb
class ReleasesController < AuthorizedController
# GET /releases
# GET /releases.xml
autocomplete :users, :name
def new
@release = Release.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @release }
end
end
My view file:
= form.autocomplete_field_tag 'tester_name', :data-autocomplete=>"releases_autocomplete_users_name_path"
my routes file:
get 'releases/autocomplete_users_name'
Error:
ActionView::Template::Error (undefined local variable or method `autocomplete' for #<#<Class:0xb71cc1d8>:0xb71caa90>):
37: -puts "testers=#{@testers}"
38: = form.label :tester_tokens, "Testers"
39: = form.text_field :tester_tokens
40: = autocomplete_field_tag 'tester_name', :data-autocomplete=>"releases_autocomplete_users_name_path"
41: - @testers.each do |tester|
42: %tr
43: %td=tester.name
Upvotes: 0
Views: 664
Reputation: 1049
please update your route file this may be help you, as it is working for me:
resources :releases do
get :autocomplete_user_name, :on => :collection
end
chears..
Upvotes: 1
Reputation: 1728
Maybe don't use tag, as in the rails3-jquery-autocomplete page.
try
form.autocomplete_field :tester_name, autocomplete_tester_name_releases_path
I think you should also create a virtual field on releases model if you want to use :tester_name.
if you want to grab the id, then you can create a hidden field and add :id_element => '#some_element' to the autocomplete helper
Upvotes: 0