そこで、Kaminari のページ分割された配列を返す検索フォームを作成しました。最初のページは常に結果のリストを返しますが、後続のすべてのページ リンクの「GET」では結果が返されず、その理由がわかりません!
これが私のコントローラーの検索方法です
def writer_search
@writers = Kaminari.paginate_array(@results).page(params[:page]).per(10)
end
def writer_search_submit
@results = #my big array of results, this part works fine
@writers = Kaminari.paginate_array(@results).page(params[:page]).per(10)
render 'writer_search'
end
コードを表示
=form_tag(writer_search_submit_path, :method => 'post') do
%input{:name => 'keywords', :id => 'keywords', :value => params[:keywords]}
= submit_tag "Search"
- @writers.each do |writer|
#show the results
= paginate @writers
ページネーション リンクをクリックしたときのサーバー ログ
Started GET "/editors/writer_search?commit=Search&keywords=business&page=2"
Processing by EditorsController#writer_search as HTML
Parameters: {"commit"=>"Search", "keywords"=>"business", "page"=>"2", "utf8"=>"✓"}
最初にレンダリングされたページには、配列の最初の 10 個の結果が含まれています (この場合、何百もの結果があります)。ページネーション リンクのいずれかをクリックすると、GET が行われ、結果のないページが返されます。
何か案は?