0

我今天正在研究 Ruby on Rails 教程中的样式表,正如它所说,我添加了

<%= stylesheet_link_tag 'blueprint/screen', :media => 'screen' %> 
<%= stylesheet_link_tag 'blueprint/print', :media => 'print' %>

应该从 public/stylesheets/blueprint 文件夹中读取 screen.css 和 print.css。

但是,当我打开浏览器时,样式并没有改变,所以我检查了 html 代码并显示

<link type="text/css" rel="stylesheet" media="screen" href="/assets/blueprint/screen.css></link>

谁能告诉我为什么路线是错误的?它不应该是 public/stylesheets 而不是 /assets/somewhere 吗?

4

1 回答 1

1

正如 house9 在评论中所说,请检查http://guides.rubyonrails.org/asset_pipeline.html 10 分钟阅读。

--- 在评论中回答问题--- 它会首先检查 /public 文件夹,然后它会尝试在 assets 文件夹中查找。此行为对开发有效。

在生产中,所有资产都将被编译并公开(默认)。

因此,请确保您没有公开具有所需名称的文件并将其放在资产上。您的 application.css 应该具有 sprockets 符号: *= require_tree .这将确保此文件夹中的所有有效文件都将包含在 css 中。

如果您不使用 sprockets,请确保在 application.css 上导入所需的文件

于 2013-01-14T16:38:22.750 回答