我正在研究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吗?
答案 0 :(得分:1)
正如house9在评论中所说,请查看http://guides.rubyonrails.org/asset_pipeline.html 10分钟阅读。
---回答评论中的问题--- 它将首先检查/ public文件夹,然后它将尝试查找assets文件夹。此行为对开发有效。
在生产中,所有资产都将被编译并公开(默认)。
因此,请确保您没有公开所需名称的文件并将其放在资产上。
您的application.css应该有sprockets符号:*= require_tree .
这将确保此文件夹中的所有有效文件都包含在css中。
如果您没有使用链轮,请务必在application.css上导入所需的文件