Cap staging deploy不会将image-url(“/ assets / logo_white.png”)替换为指纹图像文件

时间:2014-05-07 15:31:35

标签: ruby-on-rails ruby

我正在运行一个具有capistrano部署过程的rails网站。我对部署管道以及如何直接从Nginx提供静态文件有所了解。但是我的理解是静态图像文件链接应该更新以反映新的指纹图像文件名。

例如,在部署之后,我的文件logo_white被放置在public / assets文件夹中,新的文件名变为:

logo_white-204b61bda69f4aae0c9bb35ca909cdc2.png

但是,在我的application.css.scss文件中,行:

image-url("/assets/logo_white.png");

变成

url(/assets/logo_white.png)

那不对。如何指示sass编译器使用新的指纹图像名称?

1 个答案:

答案 0 :(得分:1)

在SASS样式表中使用image-url辅助方法时,您不希望包含路径的/ assets /部分。只需要图片的名称即可。

image-url("logo_white.png");

此外,即使您的资产已编译,请确保您的应用程序实际上在production环境中运行。