Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 生成多个PDF,而无需使用PDF重新加载页面_Ruby On Rails_Ruby_Wicked Pdf - Fatal编程技术网

Ruby on rails 生成多个PDF,而无需使用PDF重新加载页面

Ruby on rails 生成多个PDF,而无需使用PDF重新加载页面,ruby-on-rails,ruby,wicked-pdf,Ruby On Rails,Ruby,Wicked Pdf,我知道在不重新加载页面的情况下,用wicked_PDF生成多少个PDF, 我的函数不是呈现PDF视图,而是作为附件直接下载 在我看来,用户选择一个模板并下载它,但如果我想更改模板并再次下载,我必须重新加载页面 视图中的我的表单: <%= form_tag preview_path(@document, format: :pdf), method: :get do %> <%= select_tag "id", options_from_collection_for_sele

我知道在不重新加载页面的情况下,用wicked_PDF生成多少个PDF, 我的函数不是呈现PDF视图,而是作为附件直接下载

在我看来,用户选择一个模板并下载它,但如果我想更改模板并再次下载,我必须重新加载页面

视图中的我的表单:

<%= form_tag preview_path(@document, format: :pdf), method: :get do %>
  <%= select_tag "id", options_from_collection_for_select(@templates, "id", "code"), include_blank: true %>
  <%= submit_tag "Download" %>
<% end %> 

看起来您应该用另一种方法解决问题:

  • 尽可能使用或挂断服务器
  • 从生成pdf
  • 在服务器响应
    窗口后打开新选项卡。打开(ajax\u result.url)

  • 这个模板是什么?css?您有几个不同的页面来生成相同的infomação this?模板定义pdf@ElisBresciani的边距
    respond_to do |format|
              format.pdf do
                render pdf: "Labels " + @template.code,
                template: "documents/preview.pdf.erb",
                layout: 'layouts/pdf.html.erb',
                disposition: 'attachment', /* DIRECT DOWNLOAD */
                locals: {:document => @document},
                show_as_html: false,
                margin:  {   top:               @template.top_margin,                     # default 10 (mm)
                  bottom:            @template.bottom_margin,
                  left:              @template.left_margin,
                  right:             @template.right_margin },
                  paper_size: @template.paper_size
                end
              end
            end