好的,所以我在Rails 5中忽略某些图像文件夹时遇到了一些问题。这里有什么相关信息:
app/assets
javascripts/
stylesheets/
style1.scss
style2.scss
images/
subfolder1/
subfolder2/
config/initializers/assets.rb
Rails.application.config.assets.precompile += %w( style1.css )
Rails.application.config.assets.precompile += %w( style2.css )
config/environments/development.rb
config.assets.debug = true
所以我遇到的问题是资产正在被指纹识别,并且仅从子文件夹1提供。我想我知道这是因为我可以进入Chrome开发人员工具,在sources选项卡下查看从style1.scss和style2.scss生成的已编译CSS文件。
在生成的CSS中,子文件夹1中的image-url标记如下所示:
background: url(/assets/subfolder1/image-106e9d1ebbbc3111ae3e5b153c81a7237b3d033ecdabad3e107e122c3b457ca5.jpg)
在同一个生成的CSS文件中,子文件夹2中的image-url标记如下所示:
background: url(/images/subfolder2/image.png)
来自子文件夹1的图像会被渲染,但子文件夹2中的图像永远不会被检索并生成404s。为什么scss to css转换只能正确翻译subfolder1中的图像?为什么在开发模式下完全是指纹识别?
答案 0 :(得分:0)
在我的情况下,似乎我需要运行rake资产:清理以使其正确。谢谢Joel_Blum!