所以我的公司更新了Rails和Ruby版本,之后只有几个图像损坏了。它们都是用image_url("frontend/image_title.png")在scss中定义的,但只有4个不再显示,服务器给出了404错误。它们都被用作背景图像。
什么可能是问题和解决方案?
发布于 2018-01-22 20:33:14
你有没有试过预编译资产?
调用too image_url是在预编译资产的过程中执行一次的,因此可能是生产中的资产仍然具有旧路径。
要预编译,请运行以下命令:
bundle exec rake assets:precompile发布于 2018-01-22 21:55:50
看起来我总是会回答我自己的问题:)
问题是,使用assets管道编译的.scss文件很少,而且这些.scss文件有一些相同的代码,如scss变量和重置代码,我决定将它们移出到名为reset.css.scss的单独文件中,并使用@import函数将该文件导入到这些.scss文件中,这与Rails *= require方法不兼容。
在将该代码移回.scss文件并删除@import内容之后,一切工作正常。
https://stackoverflow.com/questions/48380602
复制相似问题