このエラーの取得:
NoMethodError in AwardsController#certificate
undefined method `scan' for #<Array:0x0000000354bd40>
Gemfile:
gem 'pdfkit'
バンドルのインストールを実行
アプリケーション.rb:
require 'pdfkit'
config.middleware.use "PDFKit::Middleware"
ルート.rb:
match 'awards/certificate/:id' => 'awards#certificate', :as => :certificate, :via => :get
アワードコントローラー:
def certificate
@award = Award.find(params[:id])
html = render :layout => false
kit = PDFKit.new(html, :page_size => 'Letter')
kit.stylesheets << RAILS_ROOT + '/public/stylesheets/scaffold.css'
send_data(kit.to_pdf, :filename => "#{@award.nominee_fullname Certificate}", :type => 'application/pdf')
end
レーキ ミドルウェア:
use PDFKit::Middleware
レーキルート:
certificate GET /awards/certificate/:id(.:format) awards#certificate
URL の末尾に .pdf を付けると、次のようになります。
Routing Error
No route matches [GET] "/highfive/awards/certificate/51"
私が間違っていることを知っている人はいますか?前もって感謝します。