Class: WeasyPDF::Middleware

Inherits:
Object
  • Object
show all
Defined in:
lib/weasy_pdf/middleware.rb

Overview

Rack middleware that converts HTML responses to PDF when the URL ends in .pdf.

Usage in config/application.rb:

config.middleware.use WeasyPDF::Middleware
config.middleware.use WeasyPDF::Middleware, { page_size: 'A4' }, { only: [/^\/invoices/] }

Instance Method Summary collapse

Constructor Details

#initialize(app, options = {}, conditions = {}) ⇒ Middleware

Returns a new instance of Middleware.



10
11
12
13
14
# File 'lib/weasy_pdf/middleware.rb', line 10

def initialize(app, options = {}, conditions = {})
  @app = app
  @options = options
  @conditions = conditions
end

Instance Method Details

#call(env) ⇒ Object



16
17
18
19
# File 'lib/weasy_pdf/middleware.rb', line 16

def call(env)
  request = Rack::Request.new(env)
  render_as_pdf?(request) ? serve_pdf(env, request) : @app.call(env)
end