Ruby 西纳特拉+;以对虾为例?
我在这里一无所知。我该怎么做才能开始这件事 这是我发现的最接近解决方案的东西,但它对我不起作用。 编辑: 我处于非常非常早期的阶段。我真的想尝试在对虾中创建一个hello world,然后在其中添加我的内容。类似这样的内容(app.rb):Ruby 西纳特拉+;以对虾为例?,ruby,sinatra,prawn,Ruby,Sinatra,Prawn,我在这里一无所知。我该怎么做才能开始这件事 这是我发现的最接近解决方案的东西,但它对我不起作用。 编辑: 我处于非常非常早期的阶段。我真的想尝试在对虾中创建一个hello world,然后在其中添加我的内容。类似这样的内容(app.rb): 您的代码对我来说非常适合,除了我必须将路径从“report/”更改为“/report”(因为当您转到 'http://localhost:4567/report/ ) 我运行的确切代码是: require 'sinatra' require 'prawn
您的代码对我来说非常适合,除了我必须将路径从“report/”更改为“/report”(因为当您转到
'http://localhost:4567/report/
)
我运行的确切代码是:
require 'sinatra'
require 'prawn'
get '/report/' do
content_type 'application/pdf'
pdf = Prawn::Document.new
pdf.text "Hello World"
pdf.render
end
这是我的ruby版本:
ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-darwin12.2.1]
我想你们一定非常亲密。这很疯狂,但我终于解决了,多亏了你们俩。首先,是的,前面的斜杠上有一个打字错误。但更重要的是,发生的事情是我有一个
get '/:model/?' do
代码顶部附近的行,该行与此路由冲突。因此,我将报告路线移到了顶部。一切正常,我现在可以睡觉了。谢谢。你能澄清一下这个问题吗?至少提供一些范围,例如您是否希望从Sinatra路由返回动态PDF(最佳猜测)。也许可以添加一段带有???的基本代码???你不知道该怎么办。您是否尝试过通过从磁盘读取来返回二进制PDF?这将您的问题分为知道如何返回PDF和知道如何生成PDF@NeilSlater感谢您的回复。我想做的基本上是让用户转到localhost:4567/report/并生成一个表示hello world的pdf。之后,我可能会自己做一些事情,但现在我在这里束手无策,寻找一个起点。你的例子对我很有用(好吧,如果我将
get'report/'
更改为get'/report'
)。我在Chrome中内联渲染了hello world PDF。结果证明我很接近,我的文件顶部有一条与此路径冲突的路径。非常感谢。
get '/:model/?' do