Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 太阳黑子搜索不';行不通_Ruby On Rails_Sunspot Rails_Sunspot Solr - Fatal编程技术网

Ruby on rails 太阳黑子搜索不';行不通

Ruby on rails 太阳黑子搜索不';行不通,ruby-on-rails,sunspot-rails,sunspot-solr,Ruby On Rails,Sunspot Rails,Sunspot Solr,我正在尝试在我的站点中创建一个搜索选项,但它在搜索查询后不会显示结果。 我遵循了本教程: My routes.rb: resources :users do collection do get :search end member do get :following, :followers end end My index.html.erb <table> &l

我正在尝试在我的站点中创建一个搜索选项,但它在搜索查询后不会显示结果。 我遵循了本教程:

My routes.rb:

    resources :users do
      collection do
        get :search
      end    
      member do
        get :following, :followers      
      end
    end

My index.html.erb

<table>
  <tr>
    <th>Name</th>
    <th>Email</th>
    <th></th>
    <th></th>
    <th></th>
   </tr>

   <% @users.each do |user| %>
    <tr>
    <td><%= user.name %></td>
    <td><%= user.email %></td>
    <td><%= link_to 'Show', user %></td>
    <td><%= link_to 'Edit', edit_user_path(user) %></td>
    <td><%= link_to 'Destroy', user, method: :delete, data: { confirm: 'Are you sure?' } %>
              </td>
      </tr>
    <% end %>
    </table>
    <br />

<%= link_to 'New User', new_user_path %>

My model user.rb

searchable do
  text :name
end    

And my user controller

def index
  @users = User.paginate(page: params[:page])
end

   def search
    @users = User.search do
      keywords params[:query]
    end.results

    respond_to do |format|
      format.html { render :action => "index" }
    end
   end
资源:用户可以
收藏办
获取:搜索
结束
成员do
获取:follow,:followers
结束
结束
My index.html.erb
名称
电子邮件

My model user.rb 可搜索do 文本:名称 结束 和我的用户控制器 def索引 @users=User.paginate(页面:参数[:页面]) 结束 def搜索 @users=User.search do 关键词参数[:查询] 最终结果 回应待办事项|格式| format.html{render:action=>“index”} 结束 结束

我做错了什么?

你真的有用户吗?添加用户后是否运行了rake sunspot:reindex?谢谢!!所以我每次添加新用户后都要运行这个命令?不,你不必每次都运行它。每个新用户都将自动编制索引。不过,在添加sunspot之前,您需要为所有已经拥有的用户重新编制索引。