Ruby on rails 如何使用prawn访问后面的页码

Ruby on rails 如何使用prawn访问后面的页码,ruby-on-rails,pdf,prawn,Ruby On Rails,Pdf,Prawn,我正在构建一个rails应用程序,根据用户内容动态生成PDF。我的设置如下: class ReportPdf < Prawn::Document include ActionView::Helpers::NumberHelper def initialize(arguments) super() chapter_1 chapter_2 # etc... end

我正在构建一个rails应用程序,根据用户内容动态生成PDF。我的设置如下:

    class ReportPdf < Prawn::Document
      include ActionView::Helpers::NumberHelper

      def initialize(arguments)
        super()
          chapter_1
          chapter_2 
          # etc...
      end

      def chapter1
        # lenght depends on user input 
      end

     def chapter2
        # lenght depends on user input 
     end 
     #etc..
   end
报告
操作,在my
项目
控制器中定义:

def report
    respond_to do |format|
      format.pdf do
        pdf = ReportPdf.new(arguments)
        send_data pdf.render, 
            filename: 'report.pdf', 
            type: 'application/pdf', 
            disposition: 'inline'
      end
    end
end
控制器调用
app\pdfs\report\u pdf.rb
中定义的我的类
ReportPdf
,如下所示:

    class ReportPdf < Prawn::Document
      include ActionView::Helpers::NumberHelper

      def initialize(arguments)
        super()
          chapter_1
          chapter_2 
          # etc...
      end

      def chapter1
        # lenght depends on user input 
      end

     def chapter2
        # lenght depends on user input 
     end 
     #etc..
   end
page\u count
但是只返回从当前页面开始倒数的数字


如何从第一页访问最后一个页码?

我建议先获取所有用户输入,然后计算页数。现在你正试图阻止一个你还不知道的数字的循环

例子 此时,我们不知道PDF将有多少页

因此,我会在第一章之前添加一个方法,用于收集页面数量的输入

for pages in pdf do
   number_of_pages += 1
end