rails 4 asset pipeline vendor assets images are not being precompiled

Asset PipelineRuby on-Rails-4

Asset Pipeline Problem Overview


I'm using rails 4 & ruby 1.9.3 for my application and fancybox2-rails gem, but there's a general problem with asset pipeline. If I run rake task for precompile, then everything is fine except for images in vendor/assets/images and ../gems/ruby-1.9.3-p327/gems/fancybox2-rails-0.2.1/vendor/assets/images. Images from these two folders are not being precompiled and eventually I have a problem with dead links to non-existing images. Any suggestions?

Asset Pipeline Solutions


Solution 1 - Asset Pipeline

It seems like images are included by default only from app/assets folder. So the solution is to add this line to config/application.rb

config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)

Solution 2 - Asset Pipeline

It sounds Sporker can't autoload images from vendor/assets/images.

> 2.2 Asset Organization Pipeline assets can be placed inside an application in one of three locations: app/assets, lib/assets or vendor/assets.

> app/assets is for assets that are owned by the application, such as custom images, JavaScript files or stylesheets.

> lib/assets is for your own libraries' code that doesn't really fit into the scope of the application or those libraries which are shared across applications.

> vendor/assets is for assets that are owned by outside entities, such as code for JavaScript plugins and CSS frameworks

From the description come from guides.rubyonrails.org, I don't think they ignored vendor/assets/images with no intention.

So I just added the follow line:

#config/application.rb
config.assets.paths << Rails.root.join("vendor", "assets", "images")

And, I solved my problem. I hope this will work for you.

Solution 3 - Asset Pipeline

For my Rails 4.2.x project, I just moved the vendor images to vendor/assets/images and added this to application.rb:

config.assets.precompile += %w(vendor/assets/images/*)

Works fine on development and production.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionbanestoView Question on Stackoverflow
Solution 1 - Asset PipelinebanestoView Answer on Stackoverflow
Solution 2 - Asset PipelinerocLvView Answer on Stackoverflow
Solution 3 - Asset PipelinetirdadcView Answer on Stackoverflow