Ruby on rails kaminari-重定向到最后一页

Ruby on rails kaminari-重定向到最后一页,ruby-on-rails,kaminari,Ruby On Rails,Kaminari,所以我在我的应用程序上设置了Kaminiari分页,这是一个论坛。当有人回复该线程时,我希望将他们引导到该线程的最后一页。根据我对记录编号的使用,似乎很容易对逻辑进行硬编码以获取最后一页,但是是否有一种内置方法来获取最后一页?似乎有一个答案。如果Kaminari中还没有,您可以编写一种方法来实现这一点。这应该存在,因为Kaminari还提供了用于导航的页码 比如说,@records是您执行@records.page(1)以显示获取当前记录集的数据库记录列表 最后一个页码由当前版本的kaminar

所以我在我的应用程序上设置了Kaminiari分页,这是一个论坛。当有人回复该线程时,我希望将他们引导到该线程的最后一页。根据我对记录编号的使用,似乎很容易对逻辑进行硬编码以获取最后一页,但是是否有一种内置方法来获取最后一页?

似乎有一个答案。

如果Kaminari中还没有,您可以编写一种方法来实现这一点。这应该存在,因为Kaminari还提供了用于导航的页码

比如说,@records是您执行@records.page(1)以显示获取当前记录集的数据库记录列表


最后一个页码由当前版本的kaminari(v0.12.4)中的ceil定义(@records.total\u count/per\u page.to\u f)。ceil

users = User.page(params[:page])
last_page = users.num_pages
num_pages
在中定义。 如果要添加
last_page
方法,我建议如下:

module Kaminari
  module PageScopeMethods
    def last_page
      num_pages
    end
  end
end

看在别人的份上,我会和大家分享对我有用的东西

联想
  • 对话中有很多信息
  • 消息属于会话
  • 在对话显示页面中,我想每10条消息分页一次

    messages = conversation.messages.page(params[:page]).per(10)
    last_page = messages.total_pages
    
    然后我想创建一个链接到这个显示页面,它将显示最后一个页面。我刚做了一个助手方法

    def create_link_to_last_page(conversation)
        content_tag :div do
          link_to("Show", url_for(controller: 'conversations', action: 'show', id: conversation.id, page: last_page))
        end
    end
    

    是的,我试过了,但上面说num_页面没有定义。你用的是什么版本的Kaminari?