【问题标题】:rails 4 asset pipeline image subdirectoriesrails 4 资产管道图像子目录
【发布时间】:2014-02-01 19:36:56
【问题描述】:
我知道这可能是一个简单的问题,但我被难住了。
我正在处理的应用程序房屋资产如下:
app
--assets
----fonts
----images
----javascripts
我喜欢有效地组织资产以避免道路混乱,所以我尝试像这样分解图像:
app
--assets
----fonts
----images
------icons
------views
--------home
--------admin
理想情况下,我想引用 image.png 之类的图像,而不必在资产前面添加文件夹路径,例如 views/home/image.png >
【问题讨论】:
标签:
ruby-on-rails
ruby-on-rails-4
asset-pipeline
【解决方案1】:
如果您手动将app/assets/images 下的所有路径添加到application.rb 中的Rails 资产路径,这是可能的:
Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
config.assets.paths << path
end
【解决方案2】:
在 Rails 4+ 中,对资产路径的任何更改都应在:
config/initializers/assets.rb
要将 app/assets/images 中的所有子目录添加到路径中,请添加以下内容:
Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
Rails.application.config.assets.paths << path
end
之后,您可以使用以下命令在 rails 控制台中验证资产路径:
Rails.application.config.assets.paths.each do |p|
puts p
end