Вопрос по ruby-on-rails-4, asset-pipeline – rails 4 изображения активов поставщика конвейера активов не прекомпилируются

57

м с использованием рельсов 4 & ruby 1.9.3 для моего приложения иfancybox2-rails жемчужина, но естьОбщая проблема с конвейером активов. Если я бегуrake task для прекомпиляции, то все хорошо, за исключением изображений вvendor/assets/images а также../gems/ruby-1.9.3-p327/gems/fancybox2-rails-0.2.1/vendor/assets/images, Изображения из этих двух папок не прекомпилируются, и в итоге у меня возникла проблема с неработающими ссылками на несуществующие изображения. Какие-либо предложения?

Ваш Ответ

3   ответа
78

изображения включены по умолчанию только из папки app / assets. Поэтому решение состоит в том, чтобы добавить эту строку в config / application.rb

config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
Didn»работает на Rails 4.1.5 Jorge Sampayo
Это работает для меня, но этот параметрдолжен перейдите в файл config / environment / production.rb. Тем не менее, это в настоящее время не работает в rails 4.0.0.beta1 (см.github.com/rails/rails/issues/9572 а такжеgithub.com/rails/sprockets-rails/pull/36) ottobar
Это не имеет ссылку поставщика / активов? Это не похоже на работу для меня. Pratik Khadloya
я думал, что каталог поставщика теперь исключен из процесса предварительной компиляции? wired00
9

активов / изображений.

2.2 Организация активов Ресурсы конвейера могут быть размещены внутри приложения в одном из трех мест: приложение / активы, lib / assets или vendor / assets.

Приложение / assets предназначено для ресурсов, которые принадлежат приложению, таких как пользовательские изображения, файлы JavaScript или таблицы стилей.

lib / assets для ваших собственных библиотек код, который неЭто действительно вписывается в сферу применения или тех библиотек, которые совместно используются приложениями.

vendor / assets для активов, которые принадлежат сторонним объектам, таким как код для плагинов JavaScript и CSS-фреймворки

Из описания пришлиguides.rubyonrails.orgЯ неЯ думаю, что они игнорировали продавца / активы / изображения без намерения.

Поэтому я просто добавил следующую строку:

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

И я решил свою проблему. Я надеюсь, что это будет работать для вас.

Didn»работает на Rails 4.1.5 Jorge Sampayo
Это не сработало для меня. newUserNameHere
6

vendor/assets/images и добавил это к:application.rb

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

Прекрасно работает на разработку и производство.

Это сработало в моем приложении на Rails 5, так что теперьimage_tag('image.png') возвращает правильное изображение Aarón Castro

Похожие вопросы