rails3-jquery-autocomplete出错

时间:2011-12-30 13:24:22

标签: ruby-on-rails

我已经安装了rails3-jquery-autocomplete gem并将其显示在gem列表中。 我已生成autocomplete-rails.js文件并将其包含在我的布局中。 我正在尝试在名称字段上为users表实现自动完成字段。 我收到错误说

"undefined local variable or method `autocomplete' for #<#<Class:0xb709ac24>:0xb7099a7c>"

请让我知道我哪里出错了。

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

我的观点文件:

= form.autocomplete_field_tag 'tester_name', :data-autocomplete=>"releases_autocomplete_users_name_path" 

我的路线档案:

get 'releases/autocomplete_users_name' 

错误:

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

2 个答案:

答案 0 :(得分:1)

请更新您的路线文件,这可能会对您有所帮助,因为它对我有用:

resources :releases do
    get :autocomplete_user_name, :on => :collection
  end

CHEARS ..

答案 1 :(得分:0)

也许不要使用代码,例如rails3-jquery-autocomplete页面。

form.autocomplete_field :tester_name, autocomplete_tester_name_releases_path

如果你想使用:tester_name。

,我认为你还应该在发布模型上创建一个虚拟字段

如果您想获取ID,则可以创建隐藏字段并添加:id_element =&gt; '#some_element'到自动完成助手