如何将rails项目中只有一个页面链接到某个样式表?

时间:2014-05-27 22:19:26

标签: html css ruby-on-rails sass

我在rails项目中有一个控制器main_pages,它包含两个视图:home.htmlteam.htmlhometeam的所有css和样式都已进入main_pages.css.scss,但我想将某些特定于每个页面的样式分别转换为相应的css样式表,例如作为home.css.scssteam.css.scss。创建这些样式表不是问题,但我将如何链接它们?

我甚至不知道home.htmlteam.htmlmain_pages.css.scss的关联方式,因为我在application.html的标题中看不到任何代码将两者联系起来。有人可以解释这个链接是如何制作的吗?

1 个答案:

答案 0 :(得分:0)

在您application.html.erb中,在head部分的某处添加以下代码段:

<head>
  <%= content_for?(:custom_styles) ? yield(:custom_styles) : '' %>
</head>

然后在您的视图文件(例如home.html.erb)中,您可以使用以下命令将自定义样式表添加到当前视图中:

<% content_for :custom_styles do %>
  <%= stylesheet_link_tag "custom_stylesheet_name" %>
<% end %>

现在,您添加到页面视图文件中content_for块的所有内容都将添加到标题中,因此,如果您添加样式表链接标记,它也会添加到标题中。