2014-10-02 5 views
-2

ЖурналыNoMethodError: неопределенный метод `грызть» для ноль: NilClass

/gems/pdfkit-0.6.2/lib/pdfkit/configuration.rb:22 in "wkhtmltopdf" 
/gems/pdfkit-0.6.2/lib/pdfkit/pdfkit.rb:32 in "initialize" 
/gems/pdfkit-0.6.2/lib/pdfkit/middleware.rb:22 in "new" 
/gems/pdfkit-0.6.2/lib/pdfkit/middleware.rb:22 in "call" 
/gems/warden-1.2.3/lib/warden/manager.rb:35 in "block in call" 
/gems/warden-1.2.3/lib/warden/manager.rb:34 in "catch" 
/gems/warden-1.2.3/lib/warden/manager.rb:34 in "call" 
/gems/actionpack-3.2.17/lib/action_dispatch/middleware/best_standards_support.rb:17 in "call" 
/gems/rack-1.4.5/lib/rack/etag.rb:23 in "call" 
/gems/rack-1.4.5/lib/rack/conditionalget.rb:25 in "call" 
/gems/actionpack-3.2.17/lib/action_dispatch/middleware/head.rb:14 in "call" 
/gems/actionpack-3.2.17/lib/action_dispatch/middleware/params_parser.rb:21 in "call" 
/gems/actionpack-3.2.17/lib/action_dispatch/middleware/flash.rb:242 in "call" 
/gems/rack-1.4.5/lib/rack/session/abstract/id.rb:210 in "context" 
/gems/rack-1.4.5/lib/rack/session/abstract/id.rb:205 in "call" 

Я получаю эту ошибку в Exception (AIRBRAKE). Невозможно узнать, где эта ошибка возникает, так что ее невозможно исправить.

Возможно, эта ошибка исходит из pdfkit, но когда я тестирую свой локальный, тогда он работает нормально, а также на сервере, который работает нормально, но каждый день я получаю эту ошибку.

ответ

2

Замечательная вещь о Ruby, она распространяется в источнике. Это было очень легко отследить line 22 of configuration.rb:

@wkhtmltopdf ||= (defined?(Bundler::GemfileError) && File.exists?('Gemfile') ? `bundle exec which wkhtmltopdf` : `which wkhtmltopdf`).chomp 

Итак, which wkhtmltopdf возвращается nil. Вы должны убедиться, что это не так. Подумайте об установке wkhtmltopdf, что бы это ни было. Инструкции в жемчуге явно указывают, что это необходимый этап установки: https://github.com/pdfkit/pdfkit

Смежные вопросы