如何建立搜索表单?

时间:2015-02-17 17:41:31

标签: ruby-on-rails-4 textinput

我正在尝试为我的应用制作一个简单的搜索表单。我想要做的就是搜索internship表的user列。我尝试了几种不同的方法,但对我来说没有任何作用。我真的不想使用像Solr或Elasticsearch这样的插件;我只想留在Rails框架内。有没有人有他们可以发布的代码的工作示例?

1 个答案:

答案 0 :(得分:1)

这是我的......

在我的模型中:

  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> 

您想要更改&#34; pins_path&#34;以上是你需要的任何一条路径和下方(艺术家)喜欢?&#39;应该是低级(实习)&#39;