html - 使用 Sinatra 与

  显示原文与译文双语对照的内容
0 0

如何在 Sinatra 中使用Prawn生成表单数据的PDF?

我的表单在网站的索引操作,但Prawn无法识别传入的变量。 我在 http://prawnpdf.org/docs/0.11.1/Prawn/Document.html 文档中找到了这段代码。


get '/download' do 

 content ="Hello World"

 Prawn::Document.generate"example.pdf" do |pdf|
 pdf.font"Times-Roman"
 pdf.draw_text content, :at => [200,720], :size => 32
 end
end 

现在很好,但是当我试图从参数中传递变量时,请执行以下操作:


post '/resume' do 
 @name = params.fetch 'name' 
. . .
end 

然后,如果我将它添加到/download 路由中,如下所示:


get '/download' do 

 Prawn::Document.generate"example.pdf" do |pdf|
 pdf.font"Times-Roman"
 pdf.draw_text @name, :at => [200,720], :size => 32
 end
end 

它什么也不会画出来。 另外,它会生成一个pdf文件,但并不重定向,而且我必须手动加载它。

真是stuck了- 建议?

时间: 原作者:

0 0

每个请求创建一个新的Sinatra 应用程序实例,以便为它服务。 因此,实例变量在 2个不同的请求中不会是相同的。 你需要使用多种方法之一来保持数据,或者需要将in逻辑放在布线路线中。

原作者:
...