gpt4 book ai didi

ruby-on-rails - Rails 3- Will_Paginate - 使分页链接更像 GMAIL

转载 作者:行者123 更新时间:2023-12-04 06:44:13 26 4
gpt4 key购买 nike

我正在使用 Rails 3 插件 Will_Paginate 并一直在使用以下教程来学习如何自定义分页链接:

http://thewebfellas.com/blog/2010/8/22/revisited-roll-your-own-pagination-links-with-will_paginate-and-rails-3/

我的问题是,如何使分页链接更像 GMAIL,例如:

1 - 100 of 25409 年长者 › 最年长者 »

‹ Newer 101 - 200 of 25409 Older › Oldest »

« 最新 ‹ 较新 25401 - 25409 of 25409

谢谢

最佳答案

看起来该链接具有(几乎)您需要的所有信息。

“旧”基本上是“下一页”,因此您可以覆盖 next_page渲染器中的方法。
“最旧”是“最后一页”;您需要添加一个方法,然后确保它包含在您的 pagination 返回的数组中。方法(在 will_paginate 中内置的 total_pages 方法在这里会有所帮助)。

然后对较新/最新进行相反的操作。

看看link_renderer.rblink_renderer_base.rb文件。他们拥有您将要覆盖的方法。

我编写了一个自定义的 will_paginate 3 渲染器来模拟 GitHub/Twitter 风格的“更多”分页。我已经注释了下面的代码。它不会让您准确到达需要去的地方,但这是一个开始。

module TwitterPagination
class LinkRenderer < WillPaginate::ViewHelpers::LinkRenderer
protected

# Tells WP how to render the "Next Page" link
def next_page
# The only difference from the default here is we renamed the link to "More"
# and added a custom class, twitter_pagination
previous_or_next_page(@collection.next_page, "More", 'twitter_pagination') if @collection.next_page
end

# Remove all links except our :next_page
def pagination
[ :next_page ]
end
end
end

为了做到这一点,我需要知道的一切都可以通过阅读我上面链接的两个源文件来弄清楚。

这真的让我感到惊讶,这很容易做到; will_paginate 的最新设计在这方面非常出色。

关于ruby-on-rails - Rails 3- Will_Paginate - 使分页链接更像 GMAIL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3896945/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com