我正在使用ajax在单个页面中实现双重分页。 其中一个分页是无尽的页面,但我认为这无关紧要。
我的代码很简单:
控制器:
@products = @brand.products.search(params[:search]).paginate(:page => params[:product_page], :per_page => 3)
@comments = @brand.comments.paginate(:page => params[:comment_page], :per_page => 5)
show.html.erb
<%= will_paginate @comments, :param_name => 'comment_page' %>
<%= will_paginate @products, :param_name => 'product_page' %>
show.js.erb(这是错的)
//Endless comment pagination
<% if params[:paginate] == 'comment_page' %>
$("#comments").append("<%= j ( render @comments) %>");
<% if @comments.next_page %>
$(".pagination").replaceWith("<%= j will_paginate @comments %>");
<% else %>
$('.pagination').remove();
<% end %>
<% end %>
<% if params[:paginate] == 'product_page'%>
//Product pagination
$('#products').html('<%= escape_javascript(render :partial => "products") %>');
//I put this because if I didn't, ajax just works once.
$('.pagination a').attr('data-remote', 'true');
<% end %>
但是params [:paginate] =='comment_page'和params [:paginate] =='product_page'不起作用。
如果我不添加那些几行,它可以工作,但是当我对其中一个进行分页时,另一个也分页。
谢谢!
答案 0 :(得分:0)
而不是:param_name
帮助上的will_paginate
键,请尝试:params
<%= will_paginate @comments, params: { paginate: "comment_page" } %>