.map 将数组映射到字符串中

Ric*_*wis 1 ruby arrays dictionary ruby-on-rails

使用时返回一个数组.map

<li class="mix <%= p.sectors.map {|s| "#{s.name}"} %> all">
Run Code Online (Sandbox Code Playgroud)

给出数组:

["Content Management System", "Web Design", "Web Development"]
Run Code Online (Sandbox Code Playgroud)

目前我认为返回的结果是:

<li class="mix ["Content Management System", "Web Design", "Web Development"] all mix_all" </li>
Run Code Online (Sandbox Code Playgroud)

我想使用每个 s.name 作为类名,但使用时遇到问题:

<li class="mix <%= p.sectors.map {|s| "#{s.name}"}.join(" ") %> all">
Run Code Online (Sandbox Code Playgroud)

其中每个单词都被视为一个单独的类,因此网页设计现在是两个类而不是一个类。

有没有办法将网页设计作为一个类,或者我是否需要使用不同的命名约定(例如网页设计)才能完成这项工作?

Mar*_*pka 5

这应该有效:

mix <%= p.sectors.map { |s| s.name.gsub(/\s+/, '-') }.join(' ') %>
Run Code Online (Sandbox Code Playgroud)