两种型号。类别和材料。类别has_many
材料。材料belongs_to
类别。
材质有部分_list.html.erb
,我将其呈现为类别show.html.erb
Everthing正在寻找。现在,我已将搜索添加到子视图 - show.html.erb
:
<p id="notice"><%= notice %></p>
<p>
<h2><%= @category.category_name %></h2>
</p>
<%= link_to 'Edit', edit_category_path(@category) %> |
<%= link_to 'Back', categories_path %>
<p><%= search_form_for @q do |f| %>
<%= f.label "find" %>
<%= f.search_field :sku_or_description_cont %>
<%= f.submit %>
<% end %>
</p>
</p>
<%= render 'materials/list' %>
<p></p>
搜索工作也很好。但是当我点击提交时,它会将我移至materials/index.html.erb
。我想留在类别视图中,只显示搜索结果作为父视图。
我的categories_controler.rb
show方法:
# GET /categories/1
# GET /categories/1.json
def show
@q= Material.where(:category_id => params[:id]).ransack(params[:q])
@materials = @q.result(distinct: true).paginate :page => params[:page]
end
对于serching /分页我正在使用Ransack(不知道这是否重要)。 我应该更改什么才能使其按预期工作(带有类别/显示视图的搜索结果。 谢谢。
答案 0 :(得分:1)
您应该为表单设置网址,如下所示。
<p><%= search_form_for @q, url: @category do |f| %>