У меня есть 2 класса: Posts
и Comments
, где должности has_many :comments
и comments belongs_to post
.Rails kaminari pagination для детского стола
Каждый из моих сообщений имеет страницу показа со списком комментариев, и я хотел бы разбивать комментарии по страницам. С текущим кодом у меня есть, я показываю список всех комментариев на всех страницах. Итак, если у меня есть 10 комментариев, и я хочу иметь 2 на каждой странице, я получаю 5 страниц с оригинальными 10 комментариями к ней. Может ли кто-то пролить свет?
Мой код:
Posts controller:
def show
@post = Post.find(params[:id])
@comments = @post.comments.page(params[:page]).per(3)
respond_to do |format|
format.html # show.html.erb
format.json { render json: @post }
end
end
"Show" views:
<%= paginate @comments %>
<% @post.comments.each_with_index do |comments, index| %>
<tr>
<td><%= index+1 %></td>
<td><%= comment.date %></td>
<td><%= comment.text %></td>
</tr>
<% end %>
</table>
Страницы отображаются правильно. Тем не менее, мои индексы сбрасываются каждый раз, когда я перехожу на следующую страницу. Есть ли способ сохранить комментарии при запуске индексов, несмотря на то, на какой странице они находятся? например, страница 1 имеет индексы 1-5, 2 имеет 6-10? Благодарю. – Mozbi