如何使用搜索表单将自定义参数重定向到同一页面?

时间:2015-03-12 22:55:22

标签: ruby-on-rails ruby url search parameters

我有一个页面(get 'records/:id' => 'records#show', as: 'show_record'),有一长串的表“Page”记录。我希望能够根据输入的参数来优化此列表。如何使用搜索表单将params添加到当前URL的末尾?

举例说明:

<!--tentative search form
<%= form_tag show_record_path(@record), :method => :get do %>
  <%= text_field_tag :search, params[:x] %>
  <%= submit_tag "search" %>
<% end %>
-->

<!--set filter-->
<% if params[:x].nil? %>
  <% @pages = @record.pages %>
<% else %>
  <% @pages = @record.pages.where("name LIKE ?", params[:x]) %>
<% end %>
<!--list-->
<% @pages.each do |page| %>
  <%= page.name %>
<% end %>

1 个答案:

答案 0 :(得分:0)

在您的插图中,您建议在视图中执行此逻辑。我建议你在控制器中进行任何过滤。我建议看看this RailsCastThis one也非常好。