0

我正在使用 Ruby on Rails,试图让我的搜索栏显示结果,但是每当我对产品索引页面进行分页时,都会出现以下错误:在此处输入图像描述

我的搜索表格:

<div class="navbar-form navbar-right search-form" role="search">
    <div class="input-group add-on">
        <%= form_with(url: products_path, method: 'get', local: true) do |form| %>
        <%= form.text_field :q, id: 'q', class:"form-control", placeholder: "Search ...", value: params[:q] %>
        <div class="input-group-btn">
            <%= form.submit 'Go', class:"btn btn-default", id:"btn-search"%>
        </div><!-- input-group-btn -->
        <% end %>
    </div>
</div>

在我的观点中,我有:

<div class="text-center">
  <%= will_paginate @products, inner_window: 1, outter_window: 0 %>
</div>

我的产品控制器:

def index
    if params[:q]
      search_term = params[:q]
      @products = Product.search(search_term)
    else
      @products = Product.all.paginate(page: params[:page], per_page: 6)
    end
  end

我的产品型号:

def self.search(search_term)
    if Rails.env.production?
      Product.where("name ilike ?", "%#{search_term}%")
    else
      Product.where("name LIKE ?", "%#{search_term}%")
    end
  end

任何帮助将不胜感激!谢谢!

4

1 回答 1

0

应该Product.search(search_term).paginate(page: params[:page], per_page: 6)在您的索引操作中。

于 2018-05-20T12:20:24.857 回答