Ruby on rails 4 如何构建搜索表单?

Ruby on rails 4 如何构建搜索表单?,ruby-on-rails-4,textinput,Ruby On Rails 4,Textinput,我正在尝试为我的应用程序制作一个简单的搜索表单。我只想在我的用户表的实习列中搜索。我试过几种不同的方法,但都不管用。我真的不想使用像Solr或Elasticsearch这样的插件;我只想留在Rails框架内。有人有可以发布的代码示例吗?这是我的 在我的模型中: def self.search(search) if search losearch = search.downcase where('lower(artist) LIKE ?, "%#{search.

我正在尝试为我的应用程序制作一个简单的搜索表单。我只想在我的
用户
表的
实习
列中搜索。我试过几种不同的方法,但都不管用。我真的不想使用像Solr或Elasticsearch这样的插件;我只想留在Rails框架内。有人有可以发布的代码示例吗?

这是我的

在我的模型中:

  def self.search(search)
    if search
      losearch = search.downcase
      where('lower(artist) LIKE ?, "%#{search.to_s.downcase}%")
    end
  end 
在我的控制器中:

def index
  if params[:search]
    @pins = Pin.search(params[:search])
  else  
    @pins = Pin.paginate(:page => params[:page], :per_page => 50).order("created_at DESC")
  end  


  respond_to do |format|
    format.html # index.html.erb
    format.json { render json: @pins }
    # format.js
  end
end
我认为:

<div class="index_search">
  <%= form_tag(pins_path, :method => "get", class: "navbar-form", id: "search-form") do %>
  <div class="input-append">
    <%= text_field_tag :search, params[:search], class: "span2  form-control", placeholder: "Search Reviews" %>
    <!-- In order to have the "search" icon int the button, we need to use plain HTML instead 
         of using a Rails form helper -->
    <button class="btn btn-default" type="submit"><i class="fa fa-search"></i></button>
    <% end %>
  </div> 
</div> 

“获取”,类:“导航栏表单”,id:“搜索表单”)do%>

您需要将上面的“pins_path”更改为您需要的任何路径,并且“lower(Artister)LIKE”应该是“lower(Periodium)”

我是否需要对控制器做些什么?对不起,您完全正确。我在上面改了。.paginate部分仅在我的控制器中,因为我使用分页。如果你不使用它,你可以省去它。