4

尝试使用顺风和 postcss 的 rails 7。

我在 assets/stylesheets 中有一些样式表,我通过同一文件夹中的 imports.css 文件导入这些样式表。

//imports.css
@import stylesheet1.css;
@import stylesheet2.css;

然后我在 application.html.erb 中导入该文件,其中包含以下内容:

//application.html.erb
<%= stylesheet_link_tag "application", "imports", "data-turbo-track": "reload" %>

在开发过程中,一切都按预期运行良好,与顺风相得益彰。由于 postcss,导入工作正常。但是在生产(nginx,puma)中,它试图拉入这些文件并失败。对于我拥有的每个样式表,我在浏览器控制台中看到:

获取https://mywebsite.com/assets/style/stylesheet1.css net::ERR_ABORTED 404(未找到)

我正在尝试将我的大脑从 rails 6 中的 webpacker 转移,不确定我需要在这里做什么......一些想法:

  1. 我是否需要设置它以便将样式表复制到 public/assets 文件夹或其他东西?在production.rb中有设置吗?(我觉得默认情况下rails应该已经这样做了)

  2. 我是否需要在部署时手动预编译这些资产?

帮助将不胜感激。谢谢!

4

1 回答 1

0

我是否需要在部署时手动预编译这些资产?

是的。由于您现在没有使用 Node 工作流,而是直接依赖 Sprocket 和资产,因此您需要在生产环境中进行预编译步骤。

于 2022-02-25T07:51:42.223 回答