Rails 不提供 application.css.erb

问题描述 投票:0回答:1

第一次尝试 Rails 8。 Rails 指南声明

资产管道自动评估ERB。这意味着,如果您向 CSS 资源添加

erb
扩展(例如
application.css.erb
),那么像
asset_path
这样的帮助器就可以在您的 CSS 规则中使用:

.class { background-image: url(<%= asset_path 'image.png' %>) }

我需要它来渲染指纹资产。

但是一旦我将

application.css
重命名为
application.css.erb
,样式表就会完全停止提供给我的浏览器。

作为解决方法,我尝试保留

application.css
(没有
.erb
)并按照指南关闭指纹识别,但这也不起作用:图像路径仍然带有指纹。

我做错了什么?

ruby-on-rails ruby-on-rails-8
1个回答
0
投票
正如 max

指出的那样,Propshaft 自动处理资产路径。不需要css.erb。来自

文档

Propshaft 将自动转换 CSS 中的资源引用以使用摘要文件名。因此,在提供样式表之前,
background: url("/bg/pattern.svg")

会转换为

background: url("/assets/bg/pattern-2169cbef.svg")

    

© www.soinside.com 2019 - 2024. All rights reserved.