【发布时间】:2012-01-12 03:13:56
【问题描述】:
我正在使用 Rails 3.1.1,并且在我的资产文件夹中有样式表:
- application.css
- abc.css.scss
- def.css.scss
- 等
也在子文件夹 /admin/ 我有 admin.css。总而言之
- application.css
- admin/admin.css
- abc.css.scss
- def.css.scss
- 等
现在,通过使用:
<%= stylesheet_link_tag 'application' %>
...(这似乎是默认值)我希望它只加载 application.css 但它不仅加载 application.css 还加载 abc.css.scss 等。
<link href="/assets/application.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/admin/admin.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/affiliate_types.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/benefits.css?body=1" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/buy_this_ifs.css?body=1" media="screen" rel="stylesheet" type="text/css" />
此外,它会在 /admin/- 子文件夹中加载 admin.css。据我了解,递归默认为 false,所以它不应该,对吧?
不管怎样,我试过了:
<%= stylesheet_link_tag 'application', :recursive => false %>
它仍然加载了 admin/admin.css。换句话说,与上面的结果相同。
如果我尝试:
<%= stylesheet_link_tag :all %>
它只是加载一个它找不到的“all.css”。
我尝试了:cache => true 和:cache => false 的变体,但无济于事。
我的问题:
如何让 Rails 导入所有样式表(application.css、abc.css.scss 等)但不导入 admin/admin.css?
如何让 admin.css 从 application.css 继承?我只想在其中拥有管理界面的独特功能(例如不同的主体颜色)。
【问题讨论】: