始终显示Kaminari的分页控件

san*_*ark 3 ruby pagination ruby-on-rails kaminari

有没有办法让Kaminari总是显示分页控件,即使总页数是1?

san*_*ark 6

您可以在运行时扩展Kaminari,这个过程称为[monkey-patching].只需使用以下命令在config/initializers/kaminari_ext.rb中创建一个文件:

module Kaminari
  module Helpers
    class Paginator
      def render(&block)
        instance_eval(&block) if @options[:total_pages] >= 1
        @output_buffer
      end
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

您需要重新启动rails服务器才能使更改生效.

如果你得到一个错误约NUM_PAGES是零,您可以更改NUM_PAGES一个主题内,将其更改为TOTAL_PAGES.最终将弃用num_pages来代替total_pages.

例如,我不得不更改_page.html.haml:

= raw("PAGE  #{page}  OF  #{total_pages}")
Run Code Online (Sandbox Code Playgroud)