Css 将多个字符串传递到样式表\链接\标记

Css 将多个字符串传递到样式表\链接\标记,css,ruby-on-rails,ruby-on-rails-3,asset-pipeline,Css,Ruby On Rails,Ruby On Rails 3,Asset Pipeline,我知道这一定有一个简单优雅的答案,但不知何故,我搞不懂它是什么。我试图将多个样式表传递到样式表链接标签中,但结果是错误的 当我直接调用样式表\链接\标记aaa、bbb时,我得到以下结果: <link href="/assets/aaa.css" media="screen" rel="stylesheet" type="text/css" /> <link href="/assets/bbb.css" media="screen" rel="stylesheet" type="

我知道这一定有一个简单优雅的答案,但不知何故,我搞不懂它是什么。我试图将多个样式表传递到样式表链接标签中,但结果是错误的

当我直接调用样式表\链接\标记aaa、bbb时,我得到以下结果:

<link href="/assets/aaa.css" media="screen" rel="stylesheet" type="text/css" />
<link href="/assets/bbb.css" media="screen" rel="stylesheet" type="text/css" />
如果我用一个值来称呼它,一切似乎都很好:

> css_includes = "aaa"
> stylesheet_link_tag(css_includes)
>>>  <link href="/assets/aaa.css" media="screen" rel="stylesheet" type="text/css" />
好极了

但如果我尝试传入多个对象,它将不起作用:

> css_includes = "aaa", "bbb"
> stylesheet_link_tag(css_includes)
>>>  <link href="/assets/["aaa", "bbb"].css" media="screen" rel="stylesheet" type="text/css">
这里的正确语法是什么


谢谢

每个块都需要使用一个:

<% ["aaa", "bbb"].each do |name| %>
   stylesheet_link_tag(name)
<% end %>

然而,我不认为这是Rails的方式。如果您使用sass,您可能应该在application.css中包含aaa和bbb以及require或import。

您需要使用一个each block:

<% ["aaa", "bbb"].each do |name| %>
   stylesheet_link_tag(name)
<% end %>

然而,我不认为这是Rails的方式。如果使用sass,您可能应该在application.css中包含aaa和bbb以及require或import。

您可以将字符串数组传递给样式表链接标记方法


您可以将字符串数组传递给样式表\链接\标记方法


谢谢这很有效。我意识到这不是Rails最常用的方式,但我们的网站在不同的页面上使用不同的css,因此在应用程序中使用require_tree.css似乎有些过火,这似乎是一种合理的方式。@有关控制器特定的样式表,请参阅@FabiandePabian,使其成为特定于控制器的,而不是特定于页面的。谢谢!这很有效。我意识到这不是Rails最常用的方式,但我们的网站在不同的页面上使用不同的css,因此在应用程序中使用require_tree.css似乎有些过火,这似乎是一种合理的方式。@有关控制器特定的样式表,请参阅@FabiandePabian使其特定于控制器,而不是特定于页面。请修改您选择的答案,因为rails可能已更改请修改您选择的答案,因为rails可能已更改
stylesheet_link_tag "random.styles", "/css/stylish"
# => <link href="/assets/random.styles" media="screen" rel="stylesheet" />
#    <link href="/css/stylish.css" media="screen" rel="stylesheet" />