0

我的应用程序中有一个按钮,通过单击它可以重定向到新窗口。这是它的jQuery代码:

jQ("#create_report").click(function() {
        if (jQ('#client_id').val() !== "" && 
            jQ('#report_date').val() !== "") {
            window.open( 
                "/automated_reporting/report?clientId=" + 
                jQ('#client_id').val() + "&clientName=" + 
                jQ('#client_id option:selected').html() + 
                "&selectedDate=" + jQ('#report_date').val(), 
                'Report',
                'height=700,width=750');
            jQ('#modal_report').modal('hide');
        } else {
            jQ('#create_modal_notification').showMessage(
                "error", "Provide Date and Report Type"
            );
        }
    });

在我的控制器中,我没有编写任何用于重定向或呈现它的内容,因为我已经在 J​​avaScript 中完成了它。页面重定向成功,输出也按要求正确显示。但我想要的是以 PDF 格式打印重定向页面的输出。我尝试wicked_pdf通过在控制器的报告操作中输入以下代码来使用 gem:

respond_to do |format|
          format.pdf do
              render :pdf => "file_name"
          end
      end
  end

但它只是给出了模板错误report.pdf 不存在并且当我尝试其他东西时出现双重渲染错误。

4

2 回答 2

0

在我的应用程序上使用 pry 是可行的。

respond_to do |format|
    format.pdf do                          
          pdf = OrderPdf.new(@order, view_context)
                 send_data pdf.render, filename: "serial_#{@order.id}-#{@order.first_name}.pdf",
                     type: "application/pdf",
                     disposition: "inline"
          end
end

我没有第二个渲染。

于 2013-03-04T09:21:54.447 回答
0

你有report.pdf.erb(我认为)文件吗?

我在我的应用程序上使用 wicked_pdf 并且这有效(但我的my_action.pdf.erb视图中有文件):

def my_action 
    format.pdf do
        render :pdf => slug, :show_as_html => params[:debug]
    end
于 2013-03-18T18:57:34.077 回答