【发布时间】:2016-10-12 16:35:35
【问题描述】:
我使用的是 Rails 4.2,但遵循 Rails 5.0 的部分文档,尝试构建搜索部分。 http://guides.rubyonrails.org/layouts_and_rendering.html#using-partials
我正在获取“搜索”按钮,因此共享部分正在呈现,但是,它似乎并没有返回到调用块。我没有得到标签或 search_field。我做了什么愚蠢的事情,或者这在 Rails 4.2 中不起作用吗?看起来这应该只是基本的 Ruby。
我确实注意到此示例未包含在 4.2 的文档中。 http://guides.rubyonrails.org/v4.2/layouts_and_rendering.html#using-partials
共享/_search_filters.html.erb
<div class="search">
<%= search_form_for @q, html: { class: 'form-inline'} do |f| %>
<div class="form-group">
<%= yield f %>
</div>
<%= f.submit 'Search', class: 'btn btn-default', role: 'button' %>
<% end %>
</div> <!-- /.search -->
index.html.erb
<%= render 'shared/search_filters', search: @q do |f| %>
<%= f.label :search, 'Search (optional)', class: 'control-label' %>
<%= f.search_field :name_or_description_cont,
class: 'form-control',
placeholder: 'Search (optional)' %>
<% end %>
【问题讨论】:
-
您的渲染正在工作 - 您看到了按钮。 Rails 4.2 和 5.0 指南都使用 。我认为这个部分的问题是“ ” 你在用ransack吗?这就是你不使用 form_for 而是使用 search_form_for 的原因吗?
-
是的,我们正在使用 ransack。我在表单组中添加的任何内容都会呈现在页面上,但产量不起作用
标签: ruby-on-rails ruby ruby-on-rails-5 ruby-on-rails-4.2 partials