Include WickedPdfHelper::Assets in the right instance of ActionView::Base #938
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context:
A Rails application with
config.action_controller.asset_host
defined (CDN such as cloudfront)Problem:
In a view rendered by a controller,
asset_path
returns a full url but through wicked_pdf,asset_path
returns only a path (without the host), thus breaking assets provided through a CDN.We can work around this issue by giving an absolute url to
wicked_pdf_image_tag
but it's not ideal.Solution:
I suggest to fix
lib/wicked_pdf/railtie.rb
to makeasset_path
(which is used inlib/wicked_pdf/wicked_pdf_helper/assets.rb
) aware ofconfig.action_controller.asset_host
for it to work as expected.The fix consist of including
WickedPdfHelper::Assets
in the right instance ofActionView::Base
once it's loaded.