У меня есть модель комментариев, которая разбита на страницы, и я хотел бы, чтобы комментарии загружали больше комментариев на той же странице при каждом нажатии следующей кнопки. У меня есть представление о том, как это сделать, но кто-нибудь может посоветовать, как это сделать. У меня уже есть код.
Что касается раздела комментариев, а не рендера, я думаю, что, возможно, придется искать микросообщение и его идентификатор, чтобы найти нужные комментарии для добавления, но я не уверен, как связать все это вместе.
Пагинация JS
$(function() {
$("#CommentPagin a").live("click", function() {
$.getScript(this.href);
return false;
});
});
Показать JS
$("#cc").append('<%= escape_javascript(render :partial => "users/comments" )%>');
Раздел комментариев
<div id='comments'>
<% comments = micropost.comments.paginate(:per_page => 5, :page => params[:page]) %>
<div id="CommentPagin">
<span class="CommentArrowIcon"></span>
<%= will_paginate comments, :page_links => false , :class =>"pagination" %>
</div>
<%= render 'users/comments' %>
</div>
Секция визуализации комментариев
<div id="cc">
<% comments = micropost.comments.paginate(:per_page => 5, :page => params[:page]) %>
<%= render comments %>
</div>
Контроллер пользователя
def show
@user = User.find(params[:id])
@school = School.find(params[:id])
@comment = Comment.find(params[:id])
@micropost = Micropost.new
@comment = Comment.new
@comment = @micropost.comments.build(params[:comment])
@microposts = @user.microposts.order('created_at DESC').paginate(:per_page => 10, :page => params[:page])
respond_to do |format|
format.html
format.js
end
end