Rails3 / will_paginate / Ajax – 下一个/上一个链接无法正常工作(这是一个错误?)
我正在关注我的rails 3应用程序的“ 使用ajax分页 ”railscast。 一切似乎都很好,除了上一个和下一个链接根本不起作用的事实。
基本上,
-
看来,即使我点击其他页面,上一个链接也会卡住(当我在用户/ show page1上时)
-
“下一个链接”一直工作到第2页(之后我不能使用它)
-
当我来到“……”时,数字没有更新
我很高兴知道是否有人遇到同样的问题(一个错误?)或者我的代码是错误的。 我使用将paginate(“〜> 3.0.pre2”和jquery 1.8.10)作为依赖于用户的微博列表。
非常感谢你的帮助!
这里的代码:
layout_helper.rb
module LayoutHelper def javascript(*args) content_for(:head) { javascript_include_tag(*args) } end end
users_controller.rb
def show @user = User.find(params[:id]) @microposts = @user.microposts.paginate(:per_page => 10, :page => params[:page]) end
微柱/ _micropost.html.erb
...
用户/ show.html.erb
...
用户/ show.js.erb
$("#feed_items").html("");
pagination.js
$(document).ready(function() { $(".pagination a").live("click", function() { $.get(this.href, null, null, "script"); return false; }); });
我建议你看看http://railscasts.com/episodes/254-pagination-with-kaminari 。
will_paginate未更新以使用Rails 3。
或者,如果你想坚持使用will_paginate,那就是一个简单的修复。 只需将你的帮助方法放在一个div中,如下所示:
<%= will_paginate @microposts %>
然后,在您的js.erb文件中将此行添加到结尾:
$('#page_links').html('<%= escape_javascript(will_paginate @microposts) %>');
你已经在那里传递了页面和所有正确的参数,所以这只会强制视图链接正确更新。