私はRails 4.2を使用していますが、部分的にRails 5.0のドキュメントに続いて、部分的な検索を構築しようとしています。 http://guides.rubyonrails.org/layouts_and_rendering.html#using-partialsRailsで部分的に返す
私は検索ボタンを取得しているので、共有パーシャルはレンダリングされていますが、呼び出し元のブロックに戻っていないようです。私はラベルや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 %>
レンダリングが動作しています - ボタンが表示されます。レール4.2と5.0の両方のガイドは<%= yield f%>を使用します。私は問題がこのセクションにあると思う "<%= search_form_for @q、html:{class: 'form-inline'} do | f |%>"あなたはransackを使っていますか?なぜあなたはform_forを使用しておらず、search_form_forを使用していますか? – user3456978
はい、私たちはransackを使用しています。フォームグループ内に追加したものはすべてページに表示されますが、利回りは機能しません – tsunami719