用于Ransack :: Search的未定义方法`name_cont'

时间:2015-02-04 18:51:31

标签: ruby-on-rails ruby ruby-on-rails-4

我试图使用ransank gem。但出于某种原因,我得到了

  

Ransack的未定义方法`name_cont'::搜索>:Ransack :: Search

users_controller.rb

def index

    @q = User.ransack(params[:q])
    @users = @q.result
    @users = User.order(:id).includes(:employers)
    @users = User.order('last_name  ASC').page(params[:page]).per_page(2)
    #Adding CSV export
    respond_to do |format|
      format.html
      format.csv { send_data @users.to_csv }
    end
  end

我的index.html.erb

  
<%= f.label :name_cont %>
<%= f.search_field :name_cont %>

<%= f.submit %> <% end %>

1 个答案:

答案 0 :(得分:0)

你需要使用ransack的助手来创建表单。我最好的猜测是您使用了form_for而不是search_form_for,从而获得了未定义的错误。

另一种可能性是您的User模型没有属性name。 尝试将name添加到模型中,以便ransack知道要搜索的内容。