Rails 5, использующий Kaminari дважды на одной и той же странице, частично отображает всю страницу - PullRequest
1 голос
/ 25 мая 2019

действие контроллера имеет два набора данных (происходящих из одного класса, но взятых из разных запросов

    @usercontents = Usercontent.where(contenttype_id > ?, 1).page params[:page]
    @points = Usercontent.where(contenttype_id = ? ', 1]).page params[:page]

Представления имеют партиалы, которые, в свою очередь, вызывают свои партиалы

    <%= render 'points' %>

и

    <%= render 'contents' %>

_contents.html.erb частичный

<%= paginate @usercontents, remote: true, previous_label: t('navigate.previous'), next_label: t('navigate.next'), params: {anchor: 'panel3'} %>

<div id=usercontents class='tableize'>
  <%= render partial: 'usercontents/usercontent', collection: @usercontents %>
</div>

_points_html.erb частичный

<%= paginate @points, remote: true, previous_label: t('navigate.previous'), next_label: t('navigate.next'), params: {anchor: 'panel2'} %>

<div id=points class='tableize'>
  <%= render partial: 'point', collection: @points %>
</div>

Как видно из представления, коллекции нумерации страниц находятся в отдельных таблицах страницы. Конечный результат заключается в том, что страницы разбиваются на страницы, но у вызова есть три проблемы:

  1. Вместо вызова XHR только для коллекции, все активы вызываются
  2. рендеринг происходит не только для части, но и для всей страницы (включая строковый javascript!)
  3. рендеринг нумерации страниц размещается после частичного, а не подстановки вызов другой страницы просто добавляет новую страницу в конец предыдущего блока.

Что не так в этой настройке?

...