Rails wicked_pdf,将页面转换为pdf

Fel*_*lix 0 ruby wicked-pdf ruby-on-rails-4

我有一个正常的Rails布局,这是我的普通网站.

我想在此页面上使用一个按钮将此页面转换/转换为PDF文件.

我想用这个gem来做:https: //github.com/mileszs/wicked_pdf

我添加gem 'wicked_pdf'到我的Gemfile,但现在我如何转换实际页面?

Jul*_*fke 7

这是我使用的方法wicked_pdf:

# Gemfile
gem 'wicked_pdf'
gem 'wkhtmltopdf-binary' # if you need the binary too
Run Code Online (Sandbox Code Playgroud)

然后跑

$ bundle install
$ (bundle exec) rails g wicked_pdf    # generates the initializer
Run Code Online (Sandbox Code Playgroud)

然后,您可以config/initializers/wicked_pdf.rb按照github上的邪恶自述文件中的说明配置全局设置.

Rails 4已经知道pdf mime类型,但在旧版本中你可能需要注册pdf为mime类型:

# config/initializers/mime_types.rb
Mime::Type.register "application/pdf", :pdf
Run Code Online (Sandbox Code Playgroud)

在你的控制器中

respond_to do |format|
  format.html
  format.pdf do
    render  pdf: "your-filename"
  end
end
Run Code Online (Sandbox Code Playgroud)

然后你app/views/<your-view>/<controller-action>.pdf.erb用你想要的内容放下一个视图.

要通过链接引用它,您可以执行以下操作:

 = link_to "Get PDF", your_path(format: :pdf)
Run Code Online (Sandbox Code Playgroud)

这会解决你的问题吗?