2016-02-07 12 views
5

Tôi đang sử dụng 'rails', '4.2.5'wicked_pdf gem để tạo và tải xuống PDF, nhưng trên Heroku, nó không bao gồm css sử dụng thẻ wicked_pdf_stylesheet_link_tag.`phương thức undefined` find_asset 'cho nil: NilClass`

Heroku log lỗi:

ActionView::Template::Error (undefined method 'find_asset' for nil:NilClass) 

Tôi đã bỏ lỡ bất kỳ cấu hình ở đây?

Trả lời

4

Một tìm kiếm đơn giản trên Google, tiết lộ rằng lỗi này was reported in the official wicked_pdf repo vào tháng 12.

Đặt assets.compile = true như được đề xuất trong vấn đề sẽ khắc phục sự cố. Sự thay đổi này là không cần thiết với sprocket-rails != 3.0.0

+0

Cảm ơn nhưng tôi đã đến thăm liên kết này. :-) – RockStar

+0

Bạn đã thực hiện các thay đổi và khởi động lại ứng dụng chưa? –

+0

Có! Nó cũng hoạt động. – RockStar

26

Để có được nó làm việc cho phát triểnsản xuất môi trường không sử dụng

Rails.application.assets.find_asset(logical_file_path).to_s 

cho sprockets-ray phiên bản> 3.0.0 nhưng sử dụng điều này (yêu cầu đá quý la bàn-ray):

CompassRails.sprockets.find_asset(logical_file_path).to_s 

Nếu bạn không sử dụng đá quý la bàn-ray bạn có thể nhận được tài sản với:

(Rails.application.assets || ::Sprockets::Railtie.build_environment(Rails.application)).find_asset(logical_file_path).to_s 
+0

Nếu bạn sử dụng các câu lệnh ở trên để kiểm tra xem nội dung có tồn tại hay không, hãy xóa to_s nhỏ cuối cùng vì '' nil.to_s = "" = true'' – ToniTornado

Các vấn đề liên quan