使用Ruby on Rails搜索表的字段

时间:2014-06-09 04:30:00

标签: html ruby-on-rails ruby erb

我对Rails很新,但是有广泛的Java / C ++背景,正在开发一个项目,我使用以下html显示搜索框和表格:

<h2>Search ID</h2>
  <%= form_tag do %>
  <%= label_tag :user_id, "User ID" %>
  <%= text_field_tag :user_id %>
  <%= submit_tag "Search" %>
  <% end %>
<h2>List of People</h2>
<div>
  <table id="people_list" class="tablesorter">
    <thead>
    <tr>
      <th>User Name</th>
      <th>ID Number</th>
    </tr>
    </thead>
    <tbody>
      <% Users.each do |user| %>
        <tr><td><%= user.name %></td><td><%= user.id_number %></td></tr>
      <% end %>
  </table>
</div>

我想要的是一个搜索框,它允许您使用user_id实质上“查询”该表并回馈用户。理想情况下,我想在不按下搜索按钮时重定向到新页面的情况下执行此操作。

如果搜索完成,是否可以动态显示搜索栏下方和表格上方的一行表格?如果是这样,我将如何在html.erb文件中执行此操作?搜索按钮在我的控制器中会采用什么方法?我想它会与我的表用来填充自己的方法不同。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

我还没有使用过,但已经听说过这些。

elasticsearchthinking-sphinx

或(思考)U可以进行ajax调用并通过json对象返回结果。

答案 1 :(得分:0)

如果您无法找到ajax方法,则此方法会再次使用搜索条件呈现页面。有一个RailsCast - 简单搜索,它通过页面顶部的简单搜索表单运行。否则,有一个名为Ransack的gem,它允许搜索表单更复杂一些。

希望这些资源有用。

http://railscasts.com/episodes/37-simple-search-form

http://railscasts.com/episodes/370-ransack